LaneWeChat

PHP微信开发框架,高效开发微信公众号应用。简洁而又轻量

GitHub下载 查看手册

通过网页授权获得用户信息

Visits: 25678 Date: 2014-08-20 17:30:08 Power By 李轩Lane

    

        场景:用户点击了我的自定义菜单,或者我发送的文本消息中包含一个URL,用户打开了我的微信公众号的网页版,我需要获取用户的信息。


        代码:


        <?php

            use LaneWeChat\Core\WeChatOAuth;

            use LaneWeChat\Core\UserManage;


            //第一步,获取CODE

            WeChatOAuth::getCode('http://www.lanecn.com/index.php', 1, 'snsapi_base');

            //此时页面跳转到了http://www.lanecn.com/index.php,code和state在GET参数中。

            $code = $_GET['code'];

            //第二步,获取access_token网页版

            $openId = WeChatOAuth::getAccessTokenAndOpenId($code);

            //第三步,获取用户信息

            $userInfo = UserManage::getUserInfo($openId['openid']);

        ?>


Reply: ameson On 2015-01-16 14:46:53

Fatal error: Class 'test\LaneWeChat\Core\WeChatOAuth' not found in /var/www/html/test/getUserOpenid.php on line 7 php版本是5.3 请问这个怎么解决

回复

Reply: Lane On 2015-02-11 10:56:16

类没有找到。在/var/www/html/test/下面的文件中,include 'lanewechat\lanewechat.php'; 然后\LaneWeChat\Core\WeChatOAuth::方法()即可。

回复

Reply: ameson On 2015-01-16 17:58:45

Scope参数错误或没有Scope权限

回复

Reply: Lane On 2015-02-11 10:55:51

需要在微信后台开启网页授权的功能,并且填写URL。不要http,到.com截至。IP也可以。

回复

Reply: watson On 2015-03-27 11:24:50

WeChatOAuth::getCode('http://www.lanecn.com/index.php', 1, 'snsapi_base'); 请问getCode里面的参数我应该怎么写呢? 写一个新的页面404,本页也是404

回复

Reply: watson On 2015-03-27 11:57:56

找到原因了: 总结一下,给后面的卡在这朋友一个总结 config文件的URL没配置对。。。

回复

Reply: liweisheng On 2015-04-17 17:12:16

getCode('http://www.lanecn.com/index.php' getCode 里的跳转链接不要加上前面的域名如上面的www.lanecn.com

回复

Reply: Bob On 2015-04-24 16:00:34

你的代码会保存accesstoken,但是我用了新浪sae,没有写权限。这个怎么处理?

回复

Reply: Lane On 2015-06-16 10:17:28

sae不能写文件,所以你可以写数据库。

回复

Reply: yuhaol On 2015-04-29 17:28:35

授权页面刷新,code无效。此问题该如何解决。

回复

Reply: Lane On 2015-06-16 10:18:10

这个你要贴详细代码出来了

回复

Reply: Coomouse On 2015-06-11 12:05:18

你好,我用的1.4版的。网页获取用户openid,在微信用提示 redirect_uri 参数错误 <?php include 'lanewechat.php'; use LaneWeChat\Core\WeChatOAuth; use LaneWeChat\Core\UserManage; //第一步,获取CODE WeChatOAuth::getCode('lonyue.wicp.net/LaneWeChat/diansu.php', 1, 'snsapi_base'); //此时页面跳转到了http://www.lanecn.com/index.php,code和state在GET参数中。 $code = $_GET['code']; //第二步,获取access_token网页版 $openId = WeChatOAuth::getAccessTokenAndOpenId($code); //第三步,获取用户信息 $userInfo = UserManage::getUserInfo($openId['openid']); var_dump($userInfo); ?> 服务器都有配置正确

回复

Reply: Lane On 2015-06-16 10:19:15

redirect_uri要跳转到你自己的项目,。。。你跳到我博客干嘛=。=

回复

Reply: Coomouse On 2015-06-18 15:29:29

我是转到自己的项目的呀,只是没有改注释 WeChatOAuth::getCode('lonyue.wicp.net/LaneWeChat/diansu.php', 1, 'snsapi_base'); 我的自定义菜单代码如下: include 'lanewechat.php'; $menuList = array( array('id'=>'1', 'pid'=>'0', 'name'=>'点数', 'type'=>'view', 'code'=>'http://lonyue.wicp.net/LaneWeChat/diansu.php'), array('id'=>'2', 'pid'=>'0', 'name'=>'查询', 'type'=>'view', 'code'=>'http://lonyue.wicp.net/LaneWeChat/feedback.php'), array('id'=>'3', 'pid'=>'0', 'name'=>'更多', 'type'=>'', 'code'=>''), ); $result = \LaneWeChat\Core\Menu::setMenu($menuList); 服务器配置如下: define("WECHAT_URL", 'http://lonyue.wicp.net'); define('WECHAT_TOKEN', 'weixin'); define('ENCODING_AES_KEY', ""); diansu.php代码如下: include 'lanewechat.php'; use LaneWeChat\Core\WeChatOAuth; use LaneWeChat\Core\UserManage; //第一步,获取CODE WeChatOAuth::getCode('lonyue.wicp.net/LaneWeChat/diansu.php', 1, 'snsapi_base'); //此时页面跳转到了http://lonyue.wicp.net/LaneWeChat/diansu.php,code和state在GET参数中。 echo $code = $_GET['code']; //第二步,获取access_token网页版 $openId = WeChatOAuth::getAccessTokenAndOpenId($code); echo $openId; 还是出现 “redirect_uri 参数错误”,请大神帮我看一下,我只需要获取用户的ID就行了。

回复

Reply: caozewa On 2015-06-26 17:09:54

微信 开发者中心-》网页授权获取用户基本信息 -》修改 写上你的域名

回复

Reply: zokio On 2015-09-08 21:29:44

我在微信 开发者中心-》网页授权获取用户基本信息 -》修改 写上了我的域名www.huansiang.com 仍然是“redirect_uri 参数错误”

回复

Reply: caozewa On 2015-06-26 01:07:57

$openId = WeChatOAuth::getAccessTokenAndOpenId($code); $userInfo = UserManage::getUserInfo($openId['openid']); $openId 和$userInfo 获取到的怎么是数组呢

回复

Reply: WilliamLype On 2016-02-05 17:55:17

nice site!

回复

Reply: wxj2016 On 2016-03-21 21:35:54

我想获取用户信息,老是出错。那个WeChatOAuth::getCode()到底如何配置!!WECHAT_URL配哪个URL求解

回复

Reply: vikily On 2016-09-09 13:36:57

//发现个问题,需要把 $redirect_uri = WECHAT_URL . $redirect_uri; 注释掉,否则拼接的redirect_uri是错误的。 public static function getCode($redirect_uri, $state=1, $scope='snsapi_base'){ if($redirect_uri[0] == '/'){ $redirect_uri = substr($redirect_uri, 1); } //公众号的唯一标识 $appid = WECHAT_APPID; //授权后重定向的回调链接地址,请使用urlencode对链接进行处理 //$redirect_uri = WECHAT_URL . $redirect_uri; $redirect_uri = urlencode($redirect_uri);

回复

Reply: gujf On 2017-02-09 08:54:15

WeChatOAuth::getCode('http://www.lanecn.com/index.php', 1, 'snsapi_base'); 上面的代码里面的url其实是redirect_uri,所以只要2步: 1、去微信后台设置你的域名或者ip 2、这边的参数只要填写一个php文件名,WeChatOAuth::getCode('index.php', 1, 'snsapi_base'); ps: 1、这个问题也卡了我好久,后来仔细看了微信的官方文档,理解了原理,并看了作者的源码,亲测可以 2、评论有一个兄弟说要把wechatoauth里面的一个拼接的url注释掉,其实也没错,前提是redirect_uri要写完整的地址了 3、最后还有一点,确认你的config.php里面的相关参数是否正确,因为会读取里面的东西拼接url

回复

Reply: uclraeceh On 2019-12-29 12:05:40

http://mewkid.net/who-is-xandra/ - Amoxicillin 500mg <a href="http://mewkid.net/who-is-xandra/">Buy Amoxicillin Online</a> feu.vbsy.lanewechat.lanecn.com.sok.ot http://mewkid.net/who-is-xandra/

回复

Reply: atsaxek On 2019-12-29 12:46:38

http://mewkid.net/who-is-xandra/ - Amoxil <a href="http://mewkid.net/who-is-xandra/">Amoxicillin</a> rzm.zubj.lanewechat.lanecn.com.dfr.wz http://mewkid.net/who-is-xandra/

回复

Reply: uutafquerev On 2019-12-29 13:07:14

http://mewkid.net/who-is-xandra/ - Amoxicillin 500 Mg <a href="http://mewkid.net/who-is-xandra/">Buy Amoxicillin Online</a> neb.ysoz.lanewechat.lanecn.com.lye.gr http://mewkid.net/who-is-xandra/

回复

Reply: f88tw On 2020-01-08 14:41:04

f88tw|Wacoal|I appreciate your kind assistance. http://mypaper.pchome.com.tw/f88tw http://mypaper.pchome.com.tw/f88tw/P1 http://mypaper.pchome.com.tw/f88tw/post/1379131888 http://mypaper.pchome.com.tw/f88tw/post/1378915496 http://mypaper.pchome.com.tw/f88tw/post/1377153372 http://mypaper.pchome.com.tw/f88tw/post/1376815127 http://mypaper.pchome.com.tw/f88tw/post/1376478820 http://mypaper.pchome.com.tw/f88tw/post/1376374671 http://mypaper.pchome.com.tw/f88tw/post/1374349018 http://mypaper.pchome.com.tw/f88tw/post/1374353877 http://mypaper.pchome.com.tw/f88tw/post/1373187437 http://mypaper.pchome.com.tw/f88tw/post/1371719766 http://mypaper.pchome.com.tw/f88tw/post/1370868817 http://mypaper.pchome.com.tw/f88tw/post/1370804491 http://mypaper.pchome.com.tw/f88tw/post/1370927756 http://mypaper.pchome.com.tw/f88tw/post/1370961380 http://mypaper.pchome.com.tw/f88tw/post/1370901511 http://mypaper.pchome.com.tw/f88tw/post/1370821089 http://mypaper.pchome.com.tw/f88tw/post/1370820567 http://mypaper.pchome.com.tw/f88tw/post/1370820447 http://mypaper.pchome.com.tw/f88tw/post/1370820408 http://mypaper.pchome.com.tw/f88tw/post/1370815618 http://mypaper.pchome.com.tw/f88tw/post/1370781143 http://mypaper.m.pchome.com.tw/f88tw/post/1370781143 Wacoal http://mypaper.pchome.com.tw/f88tw/post/1370961380

回复

Reply: f88tw On 2020-01-13 15:10:25

敬啟者:個人小網站希望大家多多支持 感謝您對我們熱心的支持 f88tw|華歌爾|I appreciate your kind assistance. http://mypaper.pchome.com.tw/f88tw http://mypaper.pchome.com.tw/f88tw/P1 http://mypaper.pchome.com.tw/f88tw/post/1379131888 http://mypaper.pchome.com.tw/f88tw/post/1378915496 http://mypaper.pchome.com.tw/f88tw/post/1377153372 http://mypaper.pchome.com.tw/f88tw/post/1376815127 http://mypaper.pchome.com.tw/f88tw/post/1376478820 http://mypaper.pchome.com.tw/f88tw/post/1376374671 http://mypaper.pchome.com.tw/f88tw/post/1374349018 http://mypaper.pchome.com.tw/f88tw/post/1374353877 http://mypaper.pchome.com.tw/f88tw/post/1373187437 http://mypaper.pchome.com.tw/f88tw/post/1371719766 http://mypaper.pchome.com.tw/f88tw/post/1370868817 http://mypaper.pchome.com.tw/f88tw/post/1370804491 http://mypaper.pchome.com.tw/f88tw/post/1370927756 http://mypaper.pchome.com.tw/f88tw/post/1370961380 http://mypaper.pchome.com.tw/f88tw/post/1370901511 http://mypaper.pchome.com.tw/f88tw/post/1370821089 http://mypaper.pchome.com.tw/f88tw/post/1370820567 http://mypaper.pchome.com.tw/f88tw/post/1370820447 http://mypaper.pchome.com.tw/f88tw/post/1370820408 http://mypaper.pchome.com.tw/f88tw/post/1370815618 http://mypaper.pchome.com.tw/f88tw/post/1370781143 http://mypaper.m.pchome.com.tw/f88tw/post/1370781143 華歌爾 http://mypaper.pchome.com.tw/f88tw/post/1370961380

回复

Reply: 小胡须 On 2020-01-18 17:04:34

为什么 点击菜单进行网页授权的时候 一直提示appid不能为空啊 但是点击主页面的链接就能成功授权

回复

Add Comment
©2014 lanewechat.lanecn.com , All rights reserved. Power By LaneWeChat 微信PHP开发框架.  京ICP备14005030号