我们要在 APP.js 中调用获取 openid 云函数
openid为空意思是:微信支付时没有获取到付款用户唯一标识openid。这个参数是公众号支付时的必传参数。openid是公众号的普通用户的一个唯一的标识,只针对当前的公众号有效,只要获得OpenID,就可以相继获得用户的一些信息,如:所在城市、国家、姓别等,应该是没有绑定身份z和手机号。
OpenID协议提供了一个基本的认证机制。目前还有基于OpenID的其它可用协议:AttributeExchange:OpenID属性交换是一种用于在端点之间交换标识信息OpenID服务扩展。其提供了对标识信息的接收和存储。
我遇到的情况是:{ errMsg: "cloud.callFunction:ok", result: null }
方法一:先检查是否在开发前安装好nods.js和npm;
在cmd输入:
node -v
npm -v
可以看到安装好的对应版本;
云函数中使用 wx-server-sdk 需在对应云函数目录下安装 wx-server-sdk 依赖,可通过:
npm install --save wx-server-sdk@latest安装;
最后会提示:+wx-server-sdk@版本号。
成功安装依赖后,相应的云函数文件夹将生成一个package-lock.json文件。
再次上传并部署云函数:所有文件。
方法二:
在云端和本地上都要删除函数,再重新创建和上传,也许问题就会解决了!
方法三:
在云端上删除已经部署过的login函数:再次上传的时候可能会出现:
"Code": "ResourceNotFound.Function", "Message": "未找到函数版本,请创建后再...
然后此时在云端上新建函数,如下图:
再次上传并部署云函数,此时提醒函数已存在,不能重复上传,此时编译一下。
发现原本获取openid值为null的,现在能够成功获取到了用户的openid。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)