微信小程序测试版时拿不到Openid 生产环境可以

您所在的位置:网站首页 获取不到openid的原因 微信小程序测试版时拿不到Openid 生产环境可以

微信小程序测试版时拿不到Openid 生产环境可以

2024-05-28 18:37| 来源: 网络整理| 查看: 265

今天遇到了一个问题(前端遇到的) 小程序发布到测试版的时候 Openid读不到了 但是 真机调试和微信小程序开发的时候可以

https://api.weixin.qq.com/sns/jscode2 前端获取Post的接口是这个  一看就是腾讯爸爸的接口 

第一时间考虑到可能是安全域名没添加 https://api.weixin.qq 去微信公众平台发现 不让添加这个 让自己写 于是自己写了一个

后端接口:(后端语言PHP 框架Laravel)

代码如下:

public function getOpneidDetails(Request $request){ //声明CODE,获取小程序传过来的CODE $code = $request->get('code'); //配置appid $appid = "你的appid" //配置appscret $secret = "你的appscret"; //api接口 $api = "https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code"; //获取GET请求 //发送 $str =$this->httpGet($api); return $str; } public function httpGet($url) { $curl = curl_init(); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_TIMEOUT, 500); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($curl, CURLOPT_URL, $url); $res = curl_exec($curl); curl_close($curl); return $res; }

PHP原生写法:

如果PHP版本过低 会报:

这个错误  

此时 把

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true);

改成

    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);

就可以了 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3