- 关于云函数本地调试成功,但是云端测试报错问题如何解决?
目前小程序一个功能就是调用腾讯云短信的接口实现发送短信功能,目前经过本地调试,目标手机可以收到短信,但是关闭本地调试再次调用就会报错,想了解如何改进? 本人新手一枚,附上代码和报错: 报错图: [图片] 调用云函数代码: let res = await wx.cloud.callFunction({ name: 'sendsms', data: { PhoneNumberSet: passengerParentNum, TemplateParamSet: [passengerParentName,passengerName,orderID,carID,locationInfo] } }) 云函数代码: // 云函数入口文件 const tencentcloud = require("tencentcloud-sdk-nodejs"); const SmsClient = tencentcloud.sms.v20190711.Client; const clientConfig = { credential: { secretId: "AXXXX0A5nXXXGTRBgwxiXXXXl12nJZZJoXXXXXW", secretKey: "KPEoXXXXswkJcfS0XXXi14rPXXXXTgeX", }, region: "ap-guangzhou", profile: { httpProfile: { endpoint: "sms.tencentcloudapi.com", }, }, }; const client = new SmsClient(clientConfig); // 云函数入口函数 exports.main = async (event, context) => { const params = { "PhoneNumberSet" : [ '+86' + event.PhoneNumberSet ], "TemplateID" : '1XXXXX1', "Sign" : '毕业设计网约车实时定位', "TemplateParamSet" : event.TemplateParamSet, "SmsSdkAppid" : "14006XXXXX" }; await client.SendSms(params).then((data) => { console.log(data); }, (err) => { console.error("error",err); }); return params }
2022-05-21 - 有没有用过腾讯云短信功能的sms出现如下问题的?
我通过云函数来使用腾讯云sms功能,现在遇到的问题是调用云函数成功,但是没有返回结果,而且我的手机也接受不到信息,但是使用腾讯云的API explorer生成的代码就可以成功发短信,现在估计是我云函数写的有点问题,但是我实在看不出来,所以想求各位大神帮忙看看问题所在 以下是page页面的部分代码 wx.cloud.callFunction({ name: 'messege', data: { phone: "151********",//真实电话号码 templateId: "1363501", templateParamSet: ["1","2","3","4","5"] } }).then(res=>{ console.log(res); }) 这是云函数的代码 // 云函数入口文件 const cloud = require('wx-server-sdk') const tencentcloud = require('tencentcloud-sdk-nodejs'); cloud.init() // 云函数入口函数 exports.main = async (event, context) => { async function sendSms(phone, templateId, templateParamSet) { const smsClient = tencentcloud.sms.v20190711.Client console.log(process.env) /* 实例化要请求产品(以sms为例)的client对象 */ const client = new smsClient({ credential: { /* 必填:腾讯云账户密钥对secretId,secretKey。 * 这里采用的是从环境变量读取的方式,需要在环境变量中先设置这两个值。 * 你也可以直接在代码中写死密钥对,但是小心不要将代码复制、上传或者分享给他人, * 以免泄露密钥对危及你的财产安全。 * CAM密匙查询: https://console.cloud.tencent.com/cam/capi */ secretId: process.env.SECRETID, secretKey: process.env.SECRETKEY, }, /* 必填:地域信息,可以直接填写字符串ap-guangzhou,或者引用预设的常量 */ region: "ap-guangzhou", /* 非必填: * 客户端配置对象,可以指定超时时间等配置 */ profile: { /* SDK默认用TC3-HMAC-SHA256进行签名,非必要请不要修改这个字段 */ signMethod: "HmacSHA256", httpProfile: { /* SDK默认使用POST方法。 * 如果你一定要使用GET方法,可以在这里设置。GET方法无法处理一些较大的请求 */ reqMethod: "POST", /* SDK有默认的超时时间,非必要请不要进行调整 * 如有需要请在代码中查阅以获取最新的默认值 */ reqTimeout: 30, /** * SDK会自动指定域名。通常是不需要特地指定域名的,但是如果你访问的是金融区的服务 * 则必须手动指定域名,例如sms的上海金融区域名: sms.ap-shanghai-fsi.tencentcloudapi.com */ endpoint: "sms.tencentcloudapi.com" }, }, }) /* 请求参数,根据调用的接口和实际情况,可以进一步设置请求参数 * 属性可能是基本类型,也可能引用了另一个数据结构 * 推荐使用IDE进行开发,可以方便的跳转查阅各个接口和数据结构的文档说明 */ const params = { /* 短信应用ID: 短信SdkAppid在 [短信控制台] 添加应用后生成的实际SdkAppid,示例如1400006666 */ SmsSdkAppid:process.env.SMS_SDKAPPID, /* 短信签名内容: 使用 UTF-8 编码,必须填写已审核通过的签名,签名信息可登录 [短信控制台] 查看 */ Sign:process.env.SMS_SIGN, //'process.env.SMS_SIGN', /* 短信码号扩展号: 默认未开通,如需开通请联系 [sms helper] */ ExtendCode: "", /* 国际/港澳台短信 senderid: 国内短信填空,默认未开通,如需开通请联系 [sms helper] */ SenderId: "", /* 用户的 session 内容: 可以携带用户侧 ID 等上下文信息,server 会原样返回 */ SessionContext: "", /* 下发手机号码,采用 e.164 标准,+[国家或地区码][手机号] * 示例如:+8613711112222, 其中前面有一个+号 ,86为国家码,13711112222为手机号,最多不要超过200个手机号*/ PhoneNumberSet: ["+86" + phone], /* 模板 ID: 必须填写已审核通过的模板 ID。模板ID可登录 [短信控制台] 查看 */ TemplateID: templateId, /* 模板参数: 若无模板参数,则设置为空*/ TemplateParamSet: templateParamSet, } // 通过client对象调用想要访问的接口,需要传入请求对象以及响应回调函数 return client.SendSms(params); } return sendSms(event.phone, event.templateId, event.templateParamSet); } 以下是出现的问题 {errMsg: "cloud.callFunction:ok", result: null, requestID: "3df275ef-1693-4435-858e-d3037a7f15e8"}errMsg: "cloud.callFunction:ok"requestID: "3df275ef-1693-4435-858e-d3037a7f15e8"result: nullconstructor: (...)hasOwnProperty: (...)isPrototypeOf: (...)propertyIsEnumerable: (...)toLocaleString: (...)toString: (...)valueOf: (...)__defineGetter__: (...)__defineSetter__: (...)__lookupGetter__: (...)__lookupSetter__: (...)__proto__: Object
2022-04-14 - 有没有大神帮我看看为什么一直出现referenceError的报错啊?
Page({ /** * 页面的初始数据 */ data: { hours :0, minute :0, second :0, startTime : 1647233688, timeDifference :'' }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var that=this setInterval(timeDifference,1000) }, timeDifference: function(){ var endTime = Date.parse(new Date()); var usedTime = endTime - this.data.startTime //小时 var firststep_hours = usedtime % (24*60*60*1000); var hours = Math.floor(firststep_hours / (60*60*1000)); //分钟 var firststep_minute = firststep_hours % (60*60*1000); var minute = Math.floor(firststep_minute / (60*1000)); //秒 var firststep_second = firststep_minute % (60*1000); var second = Math.floor(firststep_second / 1000); //赋值 that.setData({ hours: that.timeDifference.hours, minute: that.timeDifference.minute, second: that.timeDifference.second }); return hours; }
2022-03-14