新建短信网关 控制台--系统管理--短信网关--新建短信网关--网关类型选择:HTTPS短信网关。 2、请求设置请求头部 :字段(key) 值(value) Content-Type application/x-www-form-urlencoded Authorization WSSErealm="SDP",profile="UsernameToken",type="Appkey" X-WSSE {{env.xwsse}} 请求URL参数: 请求cookie: 请求体: {{env.postData}} 3、响应配置认证成功条件:code 相等 000000 4、配置自定义请求变量脚本客户提供华为短信:appsecrt 、appkey 、模版id 、通道号 配置脚本如下或下面《华为云短信对接自定义变量脚本》txt文本 注:下面变量脚本标红加粗字体需要修改,变量脚本直接复制进去即可 /** * 示例函数: * @brief 前置请求自定义变量函数。自定义env变量,在请求配置中使用 * @params user{object} 用户信息对象,不允许被修改 * @params config{object} 全局配置对象,不允许被修改 * @params env{object} env环境对象,在整个请求会话周期中有效 * */ function preRequest(user,config, env) { let time = new Date(); let nowTime=time.toISOString().replace(/.[0-9]+\Z/, 'Z'); let random = crypto.randomBytes(64).toString('hex'); let appScrept = "9TsMawyTX3Tz3ptDrJevqH2wON2e"; let encodeAppScrept = crypto.createHash('sha256').update(random + nowTime + appScrept).digest('base64'); env.xwsse = "UsernameToken Username=\"97WxaMiHiyGwTuI83t5q0aQF00K3\"," + "PasswordDigest=\"" + encodeAppScrept + "\",Nonce=\"" + random + "\",Created=\"" + nowTime + "\"" let codes = [] codes.push(env.code); let code = JSON.stringify(codes); let body = "from=1069368924410003957&to=" + user.phone + "&templateId=807ffb8c54824e9b8b1e3d13f459d716&templateParas=" + code env.postData = code_util.encodeURI(body); } preRequest(user,config,env);
5、配置短信认证服务器注意:本地用户或第三方认证用户,需绑定手机号才能接受短信
|