问题描述:
之前一直用微信开发工具做测试 , 很少到测试机上测试(除了界面)。 以为之后在PC上接口通了 。测试机估计也没啥问题。但是到今天早上发现 ,测试机的请求 后台接受不到。已经关闭了配置中关闭合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书检查。
代码:
getDoctorOpenId:function(code){ var that = this; http._post_json("user/weixin/getOpenId ", { jscode: code, type: 0, }, function (jn) { console.log("code:"+code); var openid = jn.data.openid; if(openid==null){ that.error("获取不到openid,请重试!") }else{ that.globalData.openid = jn.data.openid; that.getDoctorInfoByOpenid(jn.data.openid); } }); },
一直提示获取不到openid, 但是在PC上 毫无问题 。
设想的问题根源:
1.封装的请求方法有问题。
2.测试机跟服务器不在同一个网络(本地)
3.请求地址有问题。
问题解决:
1.检查了下方法 , 发现除了这个接口 其他的都没问题。基本上排除
2.用测试机调试其他接口 , 发现命中后台断点。排除
3.因为手机和PC 编译方式有所不同 。 例如 " " 空格 。 发现 我的请求在复制的时候 复制多了个空格
但是在PC上面没什么影响 。 在手机上面 却成了问题关键所在。删除空格 。 一切正常