国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

微信公眾平臺實現獲取用戶OpenID的方法

2024-05-04 23:34:19
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了微信公眾平臺實現獲取用戶OpenID的方法,需要開發人員經過微信授權后獲取高級接口才能使用此功能,用戶OpenID對于微信公眾平臺建設有著非常廣泛的用途,需要的朋友可以參考下

本文實例講述了微信公眾平臺實現獲取用戶OpenID的方法。分享給大家供大家參考。具體分析如下:

用戶點擊微信自定義菜單view類型按鈕后,微信客戶端將會打開開發者在按鈕中填寫的url值 (即網頁鏈接),達到打開網頁的目的,但是view不能獲取用戶的openid,需要使用微信“網頁授權獲取用戶基本信息”高級接口結合使用,獲得用戶的登入個人信息。

具體方法:

1、配置網頁授權回調域名,如 m.survivalescaperooms.com

2、模擬公眾號的第三方網頁,http://m.survivalescaperooms.com/getcodeurl.php

 

 
  1. <?php  
  2. if(isset($_SESSION['user'])){  
  3. print_r($_SESSION['user']); 
  4. exit
  5. $APPID='公眾號在微信的appid'
  6. $REDIRECT_URI='http://m.survivalescaperooms.com/callback.php'
  7. $scope='snsapi_base'
  8. //$scope='snsapi_userinfo';//需要授權 
  9. $url='https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$APPID.'&redirect_uri='.urlencode($REDIRECT_URI).'&response_type=code&scope='.$scope.'&state='.$state.'#wechat_redirect'
  10. header("Location:".$url); 
  11. ?> 

3、第三方網頁的回跳url中,首先從請求中取得code,然后根據code進一步換取openid和access_token,然后就可以根據openid和access_token調用微信的相關接口查詢用戶信息了。

 

 
  1. <?php 
  2. //http://m.survivalescaperooms.com/callback.php 
  3. $appid = "公眾號在微信的appid";  
  4. $secret = "公眾號在微信的app secret";  
  5. $code = $_GET["code"];  
  6. $get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$appid.'&secret='.$secret.'&code='.$code.'&grant_type=authorization_code'
  7. $ch = curl_init(); 
  8. curl_setopt($ch,CURLOPT_URL,$get_token_url);  
  9. curl_setopt($ch,CURLOPT_HEADER,0);  
  10. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );  
  11. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);  
  12. $res = curl_exec($ch);  
  13. curl_close($ch);  
  14. $json_obj = json_decode($res,true);  
  15. //根據openid和access_token查詢用戶信息  
  16. $access_token = $json_obj['access_token'];  
  17. $openid = $json_obj['openid'];  
  18. $get_user_info_url = 'https://api.weixin.qq.com/sns/userinfo?access_token='.$access_token.'&openid='.$openid.'&lang=zh_CN';  
  19.  
  20. $ch = curl_init();  
  21. curl_setopt($ch,CURLOPT_URL,$get_user_info_url);  
  22. curl_setopt($ch,CURLOPT_HEADER,0);  
  23. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );  
  24. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);  
  25. $res = curl_exec($ch);  
  26. curl_close($ch);  
  27.  
  28. //解析json  
  29. $user_obj = json_decode($res,true);  
  30. $_SESSION['user'] = $user_obj;  
  31. print_r($user_obj);  
  32. ?> 

希望本文所述對大家基于php的微信公眾平臺開發有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 重庆市| 长治县| 隆尧县| 汉源县| 都江堰市| 天水市| 法库县| 宜兰县| 潞城市| 仙游县| 寿宁县| 小金县| 呼图壁县| 满城县| 贡觉县| 黄冈市| 绥化市| 长武县| 政和县| 榆林市| 武鸣县| 河北区| 西平县| 本溪市| 治县。| 宜都市| 裕民县| 昌黎县| 阳城县| 岳普湖县| 静海县| 文安县| 新竹县| 裕民县| 驻马店市| 韩城市| 墨脱县| 安康市| 仙桃市| 天等县| 仙桃市|