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

首頁 > 開發 > PHP > 正文

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

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

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

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

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

具體方法:

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

2、模擬公眾號的第三方網頁,http://www.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://www.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://www.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的微信公眾平臺開發有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岱山县| 凤庆县| 吴堡县| 桐乡市| 红原县| 东安县| 闵行区| 吴旗县| 富阳市| 陕西省| 张家口市| 黑水县| 封丘县| 介休市| 子洲县| 莱西市| 新源县| 石嘴山市| 南木林县| 稻城县| 房产| 武川县| 宽甸| 八宿县| 和田县| 繁昌县| 右玉县| 南召县| 象山县| 平舆县| 陇南市| 锡林浩特市| 汉中市| 木里| 罗城| 西贡区| 德格县| 久治县| 涟水县| 大姚县| 吴桥县|