日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

微信開發(fā) 網(wǎng)頁授權(quán)獲取用戶基本信息

瀏覽:39日期:2022-06-05 09:32:21

微信公眾平臺最近新推出微信認證,認證后可以獲得高級接口權(quán)限,其中一個是OAuth2.0網(wǎng)頁授權(quán),很多朋友在使用這個的時候失敗了或者無法理解其內(nèi)容,希望我出個教程詳細講解一下,于是便有了這篇文章。

一、什么是OAuth2.0

官方網(wǎng)站:http://oauth.net/ http://oauth.net/2/

權(quán)威定義:OAuth is An open protocol to allow secure authorization in a simple and standard method from web, mobile and desktop applications.

OAuth是一個開放協(xié)議,允許用戶讓第三方應(yīng)用以安全且標準的方式獲取該用戶在某一網(wǎng)站、移動或桌面應(yīng)用上存儲的私密的資源(如用戶個人信息、照片、視頻、聯(lián)系人列表),而無需將用戶名和密碼提供給第三方應(yīng)用。

OAuth 2.0是OAuth協(xié)議的下一版本,但不向后兼容OAuth 1.0。 OAuth 2.0關(guān)注客戶端開發(fā)者的簡易性,同時為Web應(yīng)用,桌面應(yīng)用和手機,和起居室設(shè)備提供專門的認證流程。

OAuth允許用戶提供一個令牌,而不是用戶名和密碼來訪問他們存放在特定服務(wù)提供者的數(shù)據(jù)。每一個令牌授權(quán)一個特定的網(wǎng)站(例如,視頻編輯網(wǎng)站)在特定的時段(例如,接下來的2小時內(nèi))內(nèi)訪問特定的資源(例如僅僅是某一相冊中的視頻)。這樣,OAuth允許用戶授權(quán)第三方網(wǎng)站訪問他們存儲在另外的服務(wù)提供者上的信息,而不需要分享他們的訪問許可或他們數(shù)據(jù)的所有內(nèi)容。

新浪微博API目前也使用OAuth 2.0。

原文:http://www.cnblogs.com/txw1958/p/weixin71-oauth20.html

二、微信公眾平臺OAuth2.0授權(quán)

微信公眾平臺OAuth2.0授權(quán)詳細步驟如下:

1. 用戶關(guān)注微信公眾賬號。
2. 微信公眾賬號提供用戶請求授權(quán)頁面URL。
3. 用戶點擊授權(quán)頁面URL,將向服務(wù)器發(fā)起請求
4. 服務(wù)器詢問用戶是否同意授權(quán)給微信公眾賬號(scope為snsapi_base時無此步驟)
5. 用戶同意(scope為snsapi_base時無此步驟)
6. 服務(wù)器將CODE通過回調(diào)傳給微信公眾賬號
7. 微信公眾賬號獲得CODE
8. 微信公眾賬號通過CODE向服務(wù)器請求Access Token
9. 服務(wù)器返回Access Token和OpenID給微信公眾賬號
10. 微信公眾賬號通過Access Token向服務(wù)器請求用戶信息(scope為snsapi_base時無此步驟)
11. 服務(wù)器將用戶信息回送給微信公眾賬號(scope為snsapi_base時無此步驟)

使用的AppId和AppSecret在開發(fā)者中心-開發(fā)者ID中,可以找到。

1. 配置授權(quán)回調(diào)頁面域名

進入微信公眾平臺后臺后,依次進入開發(fā)者中心-權(quán)限表,找到網(wǎng)頁授權(quán)獲取用戶基本信息,

點擊右側(cè)的修改。原文:http://www.cnblogs.com/txw1958/p/weixin71-oauth20.html

授權(quán)回調(diào)域名配置規(guī)范為全域名并且不帶http,比如需要網(wǎng)頁授權(quán)的域名為:www.qq.com,配置以后此域名下面的頁面http://www.qq.com/music.html 、 http://www.qq.com/login.html 都可以進行OAuth2.0鑒權(quán)。但http://pay.qq.com 、 http://music.qq.com 、 http://qq.com無法進行OAuth2.0鑒權(quán)。

這里我們填寫方倍工作室的一個百度應(yīng)用二級域名為 mascot.duapp.com

原文:http://www.cnblogs.com/txw1958/p/weixin71-oauth20.html

如果你的網(wǎng)址沒有被列入過黑名單,就會在頂部出現(xiàn)

然后,域名配置就成功了。

2. 用戶授權(quán)并獲取code

在域名根目錄下,新建一個文件,命名為oauth2.php,其內(nèi)容為

<?phpif (isset($_GET[‘code‘])){ echo $_GET[‘code‘];}else{ echo "NO CODE";}?>

先了解下請求授權(quán)頁面的構(gòu)造方式:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect

參數(shù)說明

參數(shù) 必須 說明 appid 是 公眾號的唯一標識 redirect_uri 是 授權(quán)后重定向的回調(diào)鏈接地址
response_type 是 返回類型,請?zhí)顚慶ode scope 是 應(yīng)用授權(quán)作用域,snsapi_base (不彈出授權(quán)頁面,直接跳轉(zhuǎn),只能獲取用戶openid),snsapi_userinfo (彈出授權(quán)頁面,可通過openid拿到昵稱、性別、所在地。并且,即使在未關(guān)注的情況下,只要用戶授權(quán),也能獲取其信息) state 否 重定向后會帶上state參數(shù),開發(fā)者可以填寫任意參數(shù)值 #wechat_redirect 否 直接在微信打開鏈接,可以不填此參數(shù)。做頁面302重定向時候,必須帶此參數(shù)

應(yīng)用授權(quán)作用域:由于snsapi_base只能獲取到openid,意義不大,所以我們使用snsapi_userinfo。

回調(diào)地址:填寫為剛才上傳后的oauth2.php的文件地址,

state參數(shù):隨便一個數(shù)字,這里填1

構(gòu)造請求url如下:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=http://mascot.duapp.com/oauth2.php&response_type=code&scope=snsapi_userinfo&state=1#wechat_redirect

把這個鏈接發(fā)送到微信中,以便在微信瀏覽器中打開,這里使用A鏈接封裝如下:

歡迎關(guān)注【近寶】,它能讓你更加方便尋找在你附近合你心意的餐飲、服裝、百貨、美容美發(fā)店鋪。
<a >點擊這里綁定</a>
技術(shù)支持 方倍工作室

在微信中顯示如下

點擊綁定后,彈出應(yīng)用授權(quán)界面

選擇允許,點擊

跳轉(zhuǎn)到auth2.php頁面,執(zhí)行

echo $_GET[‘code‘]

界面上顯示的就是code,這時候通過右上角按鈕中的復(fù)制鏈接,得到鏈接如下:

http://mascot.duapp.com/oauth2.php?code=00b788e3b42043c8459a57a8d8ab5d9f&state=1

我們成功得到了code了。

注意:如果在綁定的時候出現(xiàn)這樣的界面,就說明參數(shù)不對,需要回頭檢查一下參數(shù)


3. 使用code換取access_token

換取網(wǎng)頁授權(quán)access_token頁面的構(gòu)造方式:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code

參數(shù)說明

參數(shù) 是否必須 說明 appid 是 公眾號的唯一標識 secret 是 公眾號的appsecret code 是 填寫第一步獲取的code參數(shù) grant_type 是 填寫為authorization_code

code:在這里填寫為上一步獲得的值

構(gòu)造請求url如下:

https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx8888888888888888&secret=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&code=00b788e3b42043c8459a57a8d8ab5d9f&grant_type=authorization_code

可以在瀏覽器中直接執(zhí)行這條語句:

(

這里是關(guān)鍵,就是通過上面的url獲取json數(shù)據(jù)的代碼

   $ch = curl_init();  curl_setopt($ch, CURLOPT_URL, $url);  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 要求結(jié)果為字符串且輸出到屏幕上  curl_setopt($ch, CURLOPT_HEADER, 0); // 不要http header 加快效率  curl_setopt($ch, CURLOPT_USERAGENT, ‘Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)‘);  curl_setopt($ch, CURLOPT_TIMEOUT, 15);  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // https請求 不驗證證書和hosts  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);    $output = curl_exec($ch);  curl_close($ch);  $jsondecode = json_decode($output); //對JSON格式的字符串進行編碼  $array = get_object_vars($jsondecode);//轉(zhuǎn)換成數(shù)組      //紅色兩行是重點,針對https的,讓我糾結(jié)了一天多  echo $array;

)

得到如下json數(shù)據(jù):

{ "access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw", "expires_in": 7200, "refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5CZPAwZksiuz_6x_TfkLoXLU7kdKM2232WDXB3Msuzq1A", "openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc", "scope": "snsapi_userinfo,"}

數(shù)據(jù)格式解讀如下:

參數(shù) 描述 access_token 網(wǎng)頁授權(quán)接口調(diào)用憑證,注意:此access_token與基礎(chǔ)支持的access_token不同 expires_in access_token接口調(diào)用憑證超時時間,單位(秒) refresh_token 用戶刷新access_token openid 用戶唯一標識,請注意,在未關(guān)注公眾號時,用戶訪問公眾號的網(wǎng)頁,也會產(chǎn)生一個用戶和公眾號唯一的OpenID scope 用戶授權(quán)的作用域,使用逗號(,)分隔

于是,我們成功的通過code換取到了access_token,以及refresh_token。

刷新access_token

官方文檔中提到了刷新access_token的功能,但這不是必須要做的,初次使用可以先忽略。

url請求方法如下:

https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN

參數(shù)說明

參數(shù) 是否必須 說明 appid 是 公眾號的唯一標識 grant_type 是 填寫為refresh_token refresh_token 是 填寫通過access_token獲取到的refresh_token參數(shù)

構(gòu)造如下:
https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=wx8888888888888888&grant_type=refresh_token&refresh_token=OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5CZPAwZksiuz_6x_TfkLoXLU7kdKM2232WDXB3Msuzq1A

在瀏覽器中執(zhí)行得到前面同樣格式的json數(shù)據(jù)

4. 使用access_token獲取用戶信息

請求方法:

https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID
參數(shù)說明

參數(shù) 描述 access_token 網(wǎng)頁授權(quán)接口調(diào)用憑證,注意:此access_token與基礎(chǔ)支持的access_token不同 openid 用戶的唯一標識

構(gòu)造url如下:

https://api.weixin.qq.com/sns/userinfo?access_token=OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw&openid=oLVPpjqs9BhvzwPj5A-vTYAX3GLc

可以在瀏覽器中直接執(zhí)行這條語句:

得到如下json數(shù)據(jù):

{ "openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc", "nickname": "方倍", "sex": 1, "language": "zh_CN", "city": "Shenzhen", "province": "Guangdong", "country": "CN", "headimgurl": "http://wx.qlogo.cn/mmopen/utpKYf69VAbCRDRlbUsPsdQN38DoibCkrU6SAMCSNx558eTaLVM8PyM6jlEGzOrH67hyZibIZPXu4BK1XNWzSXB3Cs4qpBBg18/0", "privilege": []}

參數(shù)解讀:


參數(shù) 描述 openid 用戶的唯一標識 nickname 用戶昵稱 sex 用戶的性別,值為1時是男性,值為2時是女性,值為0時是未知 province 用戶個人資料填寫的省份 city 普通用戶個人資料填寫的城市 country 國家,如中國為CN headimgurl 用戶頭像,最后一個數(shù)值代表正方形頭像大小(有0、46、64、96、132數(shù)值可選,0代表640*640正方形頭像),用戶沒有頭像時該項為空 privilege 用戶特權(quán)信息,json 數(shù)組,如微信沃卡用戶為(chinaunicom)

這與我個人的微信信息是一致的

至此,在不輸入我的賬號及密碼的情況下,微信公眾賬號近寶獲得了我的個人信息,這些信息包括昵稱、性別、國家、省份、城市、個人頭像以及特權(quán)列表。

一個完整的OAuth2認證就完成了。

三、詳細演示

關(guān)注方倍工作室(二維碼見下圖),回復(fù)“授權(quán)”,返回圖文消息,點擊圖片

在確認頁面,點擊“允許”

彈出獲取到的結(jié)果(圖片做了防盜處理,所以不能直接顯示出來,可以下載到本地再來顯示)

以上就是關(guān)于微信開發(fā),網(wǎng)頁授權(quán)獲取用戶信息的資料整理,后續(xù)繼續(xù)補充相關(guān)資料,謝謝大家對本站的支持!

標簽: ASP
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美黑人巨大videos精品| 久久精品国产网站| 精品五月天堂| 久久电影tv| 久久天堂av| 黄色成人在线网址| 亚洲伊人影院| 欧美国产专区| 日韩精品麻豆| 午夜久久久久| 日本不卡视频在线观看| 精品国产一区二区三区噜噜噜| 黄色在线网站噜噜噜| 午夜av一区| 日韩中出av| 精品国产黄a∨片高清在线| 久久精品播放| 免费在线欧美视频| 国产另类在线| 日韩精品免费一区二区三区| 亚洲一区网站| 91国内精品| 伊人久久高清| 日韩1区2区3区| 日韩电影免费网址| 亚洲精品高潮| 日韩不卡一区| 亚洲视频国产精品| 国产不卡精品在线| 国产一级久久| 老司机精品在线| 99在线|亚洲一区二区| 日韩av三区| 国产99精品一区| **爰片久久毛片| 99久精品视频在线观看视频| 日本午夜精品久久久久| 久久精品高清| 蜜桃久久久久| 另类av一区二区| 四季av一区二区凹凸精品| 一区二区国产在线观看| 日韩欧美另类一区二区| 国产色噜噜噜91在线精品| 不卡视频在线| 成人精品动漫一区二区三区| 蜜臀久久99精品久久久久久9 | 国产福利一区二区精品秒拍| 香蕉久久99| 美女av一区| 中文字幕日韩高清在线 | 国产一区国产二区国产三区| 亚洲一区免费| 国产一区观看| 国产va在线视频| 久久国产三级| 久久亚洲欧洲| 天堂中文在线播放| 欧美一区二区三区久久| 久久国产高清| 亚洲大全视频| 成人午夜国产| 美女av在线免费看| 精品久久97| 久久中文字幕一区二区| 欧美中文一区| 亚洲专区视频| 黑丝一区二区| 激情欧美一区二区三区| 国产美女高潮在线| 久久精品欧洲| 国产精品亚洲二区| 日韩精品一卡二卡三卡四卡无卡 | 欧美中文一区二区| 另类专区亚洲| 成人污污视频| 欧美极品中文字幕| 国产日产精品一区二区三区四区的观看方式| 婷婷亚洲五月色综合| 亚洲最新无码中文字幕久久| 国产精品日本一区二区三区在线| 亚洲精品美女91| 亚洲欧洲专区| 综合亚洲色图| 中文一区一区三区免费在线观 | 国产成人精品免费视| 国产精品2023| 国产精品亚洲欧美一级在线| 91成人在线精品视频| 亚洲精选成人| 日韩精品一页| 国产精品一区免费在线| 日韩高清在线不卡| 日韩av中文字幕一区二区 | 中文一区一区三区免费在线观 | 日韩欧美一区二区三区免费看| 国产福利91精品一区二区| 精品视频自拍| 美女久久99| 精品亚洲成人| 免费在线小视频| 在线视频观看日韩| 99精品视频精品精品视频| 婷婷综合六月| 欧美成人高清| 视频一区中文字幕国产| 日韩一区免费| 国产毛片久久久| 捆绑调教美女网站视频一区| 久久中文字幕一区二区三区| 国产精品久久久久久久免费观看 | 国产精品极品| 日韩88av| 欧美日韩国产欧| 亚洲欧美专区| 欧美亚洲一级| 国产精品亚洲综合久久| 国产夫妻在线| 国产亚洲福利| 91精品国产自产在线丝袜啪| 国产精品v日韩精品v欧美精品网站 | 另类专区亚洲| 伊人成人网在线看| 日韩va亚洲va欧美va久久| 久久久久久婷| 亚洲午夜一级| 日韩动漫一区| 成人黄色av| 激情欧美一区| 日韩精品免费视频人成| 精品三级在线观看视频| 欧美日韩色图| 日韩精品导航| 国产高清不卡| 亚洲深深色噜噜狠狠爱网站| 麻豆久久久久久| 免费av一区二区三区四区| 日韩中文av| 韩国精品主播一区二区在线观看 | 美女网站视频一区| 亚洲男人在线| 不卡福利视频| 蜜臀久久久久久久| av资源中文在线| 亚洲天堂av资源在线观看| 精品深夜福利视频| 欧美~级网站不卡| 日韩av三区| 偷拍欧美精品| 开心激情综合| 亚洲精品极品| 91精品国产自产在线观看永久∴ | 国精品一区二区| 国产剧情一区二区在线观看| 欧美一级精品| 久久精品日韩欧美| 亚洲网址在线观看| 久久裸体视频| 国产精品黄网站| 视频一区视频二区在线观看| 水蜜桃久久夜色精品一区| 视频精品一区| 欧美美女一区| 精品三级av| 免费在线观看视频一区| 久久久久91| 精品久久精品| 欧美三级第一页| 伊人久久婷婷| 成人日韩精品| 麻豆精品久久| 亚洲影视一区| 99精品视频在线| 精品视频在线一区二区在线| 天堂精品久久久久| 黄色精品网站| 在线一区av| 国产精品黄色| 青青国产91久久久久久| 日韩视频久久| 久久五月天小说| 国产成人黄色| 国产精品chinese| 国产午夜久久av| 蜜臀av在线播放一区二区三区| 久久免费国产| 日韩在线高清| 日韩成人免费| 国产一区二区三区免费在线 | 一区二区三区网站| 99国产精品| 99久精品视频在线观看视频| 成人污污视频| 精品久久精品| 精品一区二区三区免费看| 国产精品蜜月aⅴ在线| 欧美亚洲三区| 久久国产精品色av免费看| 日韩三区四区| 日韩精品一页|