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

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

WBOY
Lepaskan: 2016-06-07 11:35:05
asal
1709 orang telah melayarinya

在使用微信公众平台进行第三方开发的过程中,我们经常会遇到需要调用微信页面授权、从而获取用户信息。但是单一的使用微信页面授权的方式进入页面,总会存在跳转到微信页面进行授权的问题,这样就会增加用户进入页面所费时间,从而影响用户体验。
所以我们需要一种方式,借助其他机制等,不必要使得用户每次均要跳转到微信页面授权位置。这样在用户不是第一次进入页面的过程中,即可以不用跳转微信页面授权,从而减少用户进入页面时间,提升用户体验。
这样的使用方式,可以借助服务器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元

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan