微信公众号 开发 40163 code been used

2018-12-23 11:57:56 +08:00
 JasonTsang

微信公众号 开发 40163 code been used

一直说我 code 被用。但代码事实是没有用啊,

经过 https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=http://HOST/index/index/index?activityId={$Request.param.activityId}&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect

微信重定向后 直接就进入到下面的处理代码里(中间没有任何的其它东西,这 code 怎么会是被使用了呢?)


		if(!Session::has('userInfo')){

			$code = $params['code'];
			//获取特殊的 access_token
			$url = "https://api.weixin.qq.com/sns/oauth2/access_token";
			$params['appid']= config('appid');
			$params['secret']= config('appsecret');
			$params['code'] = $code;
			$params['grant_type']='authorization_code';
			//定义返回值接收变量;
			$httpstr = http($url, $params, 'GET', array("Content-type: text/html; charset=utf-8"));
			
            //这里是代码报错位置 $httpstr 返回 40163 code been used  
            
            
            
			$access_token = $httpstr['access_token'];
			$openid = $httpstr['openid'];

			//根据 openid 获取用户信息
			$args['access_token'] = $access_token;
			$args['openid'] = $openid;
			$args['lang'] = 'zh_CN';
			$infoUrl = "https://api.weixin.qq.com/sns/userinfo";
			$userInfo = http($infoUrl, $args, 'GET', array("Content-type: text/html; charset=utf-8"));


			//不再支付微信公众平台 所以 APPID 改为 sessionid  为了后面的代码不进行修改 所以这里把 openid 字段来记录 sessionid
			//$userInfo = new \stdClass();
			//$userInfo->openid = session_id();
			Session::set('userInfo', $userInfo);
		}
        
4009 次点击
所在节点    PHP
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/520157

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX