我是要把openId存到数据库里,在小程序模拟器和真机调试状态下都可以得到并保存起来,但在真机非调试状态下就获取不到??
微信开发者工具 0.22.202200
基础库版本1.5.2
开启ES6转ES5 开启状态
开启上传代码时样式文件自动补全 开启状态
开启代码压缩上传 开启状态
开发环境不校验请求域名、TLS版本以及HTTPS证书 开启状态
把获取微信openid的请求放在webservice上,不要放在小程序端,webserviec代码如下
string mycode="",//登录时获取的 code(在小程序端调用微信wx.login获得,传到webservice)
string appid = “****************”;//小程序唯一标识
string secret = “************************”;//小程序的 app secret
string grant_type = “authorization_code”;//填写为 authorization_code
//这是一个 HTTPS 接口,开发者服务器使用登录凭证 code 获取 session_key 和 openid。
string weixinapi = “https://api.weixin.qq.com/sns/jscode2session?appid=” + appid + “&secret=” + secret + “&js_code=” + mycode + “&grant_type=” + grant_type;//接口地址
string str = myhttphelper.HttpGet(weixinapi);//C#请求Url(不清楚的自己百度),str就是返回的结果,自己解析一下
@ 寻祢雨
肯定是异步了,一般人选择在app.js中选择去获取openid,就是因为当openid还没拿到的时候,首页onload已经开始加载了,这个时候去打印openid是拿不到了,这就是异步执行,解决异步就可以了