已经解决了哈,最后是因为中文编码的问题
订阅消息subscribeMessage.send,无任何返回步骤: 1,微信小游戏客户端,弹出一次性授权订阅消息的确认框,选择了 授权 2,将授权成功的记录告知由nodejs写的服务器端,启动定时器到时间执行 subscribeMessage.send 通知微信端去发送模版消息 3,获取正确的 token 值, 拿到授权玩家的 openid ,从微信后台拿到配置好的模版id 和 模版字段 信息 4,发送如下post请求: var _token = "111111111"; var _obj = { touser: "222222222", template_id: "333333333", page: "index?submsg=44444444", data: { "phrase1": { "value": "未签到" }, "thing1": { "value": "道具或金币" }, "thing2": { "value": "每天可以获得不同奖励" } } } var content = JSON.stringify(_obj); var options = { host: "api.weixin.qq.com", path: "/cgi-bin/message/subscribe/send?access_token=" + _token, method:'POST', json: true, headers:{ 'Content-Type':'application/json' } } // 执行请求 var req = https.request(options, function (res) { res.on('data', function (_data) { if(_data) { try { var resObj = JSON.parse(_data); // 返回实际结果 console.log(resObj); } catch(_e) { } } }); }); req.on('error', function (e) { console.log("请求错误", e); }); console.log("执行请求"); req.write(content); req.end(); 5,如上代码在服务器执行后, 只打印出了 “执行请求” 这个内容,其他微信端没有任何返回,错误结果也没有,正确结果也没有
2020-05-11