收藏
回答

在小程序中要获得用户openid是否可能调用微信的API接口?

我在本地可以获得,用的是以下的方法:

getOpenId: function (code) {

var that = this;

wx.request({

url: "https://api.weixin.qq.com/sns/jscode2session?appid=小程序appid&secret=小程序应用密钥&js_code=" + code + "&grant_type=authorization_code",

data: {},

method: 'GET',

success: function (res) {

that.generateOrder(res.data.openid)

},

fail: function () {

// fail

},

complete: function () {

// complete

}

})

},

可是发布小程序后,无法获得用户的openid,在服务器统一下单时,总是提示:timeStamp为空。我怀疑其他字符串也为空(nonceStr,package等),不敢确认。请问问题的症结在哪里?有没有方法解决?

回答关注问题邀请回答
收藏

4 个回答

  • 吃鱼先生
    吃鱼先生
    09-16

    都没办法把api.weixin.qq.com配置成合法域名,

    自然获取不到openid

    09-16
    有用
    回复
  • 卢霄霄
    卢霄霄
    09-16

    https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html

    09-16
    有用
    回复
  • 默认²⁰²⁰
    默认²⁰²⁰
    09-16

    这个接口是服务端的API 之前有见过在前端调用的没有问题啊可以获取的 只是为了保护密钥的安全才不建议在前端保存 还是好好查下自己的timeStamp设置问题吧

    09-16
    有用
    回复
  • 王站立
    王站立
    09-16

    就是在本地可以发起支付,发布以后就不能支付了,小工具的错误信息是:Cannot read property 'timeStamp' of null,我怀疑不只是这个值为空,而是所有传来的值为空。那么再上推一步,我怀疑我没有得到openid,所以统一下单没有返回数据,不能发起第二次支付申请。

    09-16
    有用
    回复
登录 后发表内容
问题标签