Heim > php教程 > php手册 > 微信公众平台页面授权处理方法(单一方法处理)

微信公众平台页面授权处理方法(单一方法处理)

WBOY
Freigeben: 2016-06-07 11:35:05
Original
1709 Leute haben es durchsucht

在使用微信公众平台进行第三方开发的过程中,我们经常会遇到需要调用微信页面授权、从而获取用户信息。但是单一的使用微信页面授权的方式进入页面,总会存在跳转到微信页面进行授权的问题,这样就会增加用户进入页面所费时间,从而影响用户体验。
所以我们需要一种方式,借助其他机制等,不必要使得用户每次均要跳转到微信页面授权位置。这样在用户不是第一次进入页面的过程中,即可以不用跳转微信页面授权,从而减少用户进入页面时间,提升用户体验。
这样的使用方式,可以借助服务器session机制,利用if判断,进行判断。
示例代码如下:public function OAuth() {<br>             header('Content-type: text/html; charset=utf-8');<br>             //首先获取微信配置信息<br>             $m_sssmall_conf_weixin = M('sssmall_conf_weixin');<br>             $conf = $m_sssmall_conf_weixin->where('id=1')->find();<br>             //将appid、appsecret设为超全局变量,便于调用。<br>             $appid = $conf['appid'];<br>             $appsecret = $conf['appsecret'];<br>             //$access_token = getApiToken();<br>             dump($_SESSION['oauth']);<br>             //条件判断(假如session不存在,进行页面授权,并设置session)<br>             if (empty($_SESSION['oauth']) && empty($_GET['code'])) {<br>                 $redirect_uri = $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; //此即为本页面地址<br>                 $redirect_uri = urlencode($redirect_uri);<br>                 $getCodeUrl = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' . $appid . '&redirect_uri=' . $redirect_uri . '&response_type=code&scope=snsapi_userinfo&state=oauth#wechat_redirect';<br>                 redirect($getCodeUrl, 0);<br>             } elseif (!empty($_GET['code']) && empty($_SESSION['oauth'])) {<br>                 $getAccesstokenUrl = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' . $appid . '&secret=' . $appsecret . '&code=' . $_GET['code'] . '&grant_type=authorization_code';<br>                 $res = WeChat_request($getAccesstokenUrl);<br>                 $openid = $res->openid;<br>                 $_SESSION['oauth'] = $openid;<br>                 dump($openid);<br>                 //获取用户信息存储<br>             } else {<br>                 dump('第二次进入');<br>                 dump($_SESSION['oauth']);<br>             }<br>             dump('看到我就证明成功啦');<br> }

AD:真正免费,域名+虚机+企业邮箱=0元

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage