91精产品自偷自偷综合官网版下载-91精产品自偷自偷综合下-91精品-91精品91久久久-91精品成人-91精品成人www

網(wǎng)站建設(shè)資訊

NEWS

網(wǎng)站建設(shè)資訊

如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

10年積累的成都網(wǎng)站制作、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有秀峰免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

在做項(xiàng)目集成微信登錄以及微信支付的時(shí)候,都需要進(jìn)行用戶授權(quán)。這個(gè)授權(quán)的流程可以簡(jiǎn)單描述為:

1. 用戶從我們的應(yīng)用觸發(fā)需要授權(quán)的操作,比如點(diǎn)擊微信登錄;

2. 應(yīng)用收到這種用戶請(qǐng)求后,將用戶重定向到微信提供的一個(gè)授權(quán)頁(yè)面:

如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題

3. 用戶通過(guò)微信掃碼(PC端授權(quán),上邊左圖)或者點(diǎn)擊確認(rèn)按鈕(移動(dòng)端授權(quán),上邊右圖)告知微信,授權(quán)應(yīng)用訪問(wèn)自己的微信賬號(hào)信息;

4. 微信收到用戶的授權(quán)許可后,生成授權(quán)碼,并把它作為參數(shù)回調(diào)至應(yīng)用的某個(gè)頁(yè)面;

5. 應(yīng)用的回調(diào)頁(yè)面在接收到微信的回調(diào)請(qǐng)求后,拿到其中的授權(quán)碼,并通過(guò)微信官方提供的access token api接口獲取access token;

6. 最后通過(guò)access token以及微信官方提供的另一個(gè)userinfo api接口就能獲取到用戶的微信賬號(hào)信息。

為了實(shí)現(xiàn)這個(gè)過(guò)程,首先要為應(yīng)用申請(qǐng)一個(gè)微信公眾號(hào),并將應(yīng)用最終部署的域名設(shè)置到微信公眾號(hào)設(shè)置里面的授權(quán)回調(diào)頁(yè)面域名這個(gè)選項(xiàng)里面。微信官方對(duì)這個(gè)選項(xiàng)的說(shuō)明如下:

關(guān)于網(wǎng)頁(yè)授權(quán)回調(diào)域名的說(shuō)明

1、在微信公眾號(hào)請(qǐng)求用戶網(wǎng)頁(yè)授權(quán)之前,開(kāi)發(fā)者需要先到公眾平臺(tái)官網(wǎng)中的“開(kāi)發(fā) - 接口權(quán)限 - 網(wǎng)頁(yè)服務(wù) - 網(wǎng)頁(yè)帳號(hào) - 網(wǎng)頁(yè)授權(quán)獲取用戶基本信息”的配置選項(xiàng)中,修改授權(quán)回調(diào)域名。請(qǐng)注意,這里填寫的是域名(是一個(gè)字符串),而不是URL,因此請(qǐng)勿加 http:// 等協(xié)議頭;

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

3、如果公眾號(hào)登錄授權(quán)給了第三方開(kāi)發(fā)者來(lái)進(jìn)行管理,則不必做任何設(shè)置,由第三方代替公眾號(hào)實(shí)現(xiàn)網(wǎng)頁(yè)授權(quán)即可

由此可見(jiàn),這個(gè)規(guī)則極其嚴(yán)格。如果說(shuō)我們的應(yīng)用最終部署的時(shí)候只有一個(gè)域名,那么這種規(guī)則不會(huì)有什么問(wèn)題;但是考慮到將來(lái)應(yīng)用的復(fù)雜性,我們可能在應(yīng)用設(shè)計(jì)之初就會(huì)對(duì)應(yīng)用做拆分,然后不同的業(yè)務(wù)采用不同的二級(jí)域名來(lái)部署。比如一個(gè)帶有交易的應(yīng)用,你可能會(huì)把登錄注冊(cè),交易管理和常規(guī)業(yè)務(wù)都獨(dú)立出來(lái),然后采用以下的方式來(lái)部署它們:

www.your.com 部署常規(guī)業(yè)務(wù);

trade.your.com 部署交易管理的業(yè)務(wù);

passport.your.com 部署登錄注冊(cè)的業(yè)務(wù);

在這種模式下,如果集成微信登錄和微信支付,前面說(shuō)的授權(quán)回調(diào)頁(yè)面域名的規(guī)則就會(huì)給應(yīng)用帶來(lái)問(wèn)題。在這里:至少可以確認(rèn)trade.your.com和passport.your.com都需要前面的介紹的用戶微信授權(quán),但是它們是兩個(gè)不同的子域名,而且我們只有一個(gè)公眾號(hào);根據(jù)授權(quán)回調(diào)頁(yè)面域名的原則,它只能用一個(gè)域名,并且只有回調(diào)地址的域名與該設(shè)置完全相同,才能成功發(fā)起微信授權(quán),否則就會(huì)提示rediret_uri參數(shù)錯(cuò)誤或者引發(fā)無(wú)法回調(diào)的問(wèn)題。

那么這種情況該如何處理?

當(dāng)下的解決方案是引入一個(gè)新的非常簡(jiǎn)單的應(yīng)用來(lái)作為微信授權(quán)的代理服務(wù),可以這么做:

1. 把公眾號(hào)的網(wǎng)頁(yè)授權(quán)接口域名設(shè)置成另外一個(gè)子域名,如proxy.your.com;

2. 然后把php_weixin_proxy里面的index.php部署到proxy.your.com

php_weixin_proxy下的index.php是一個(gè)很簡(jiǎn)單的php文件,你可以直接查看源碼了解它的實(shí)現(xiàn)方式。因?yàn)楫?dāng)前項(xiàng)目的環(huán)境,我采用php來(lái)完成這個(gè)代理服務(wù)實(shí)現(xiàn),實(shí)際上,你完全可以用任意平臺(tái)語(yǔ)言來(lái)完成類似的功能。

當(dāng)其它業(yè)務(wù)需要發(fā)起微信授權(quán)時(shí),將授權(quán)請(qǐng)求先發(fā)到proxy.your.com,然后proxy.your.com會(huì)把這個(gè)請(qǐng)求轉(zhuǎn)發(fā)到微信;

當(dāng)用戶同意授權(quán)后,proxy.your.com會(huì)收到微信的授權(quán)回調(diào),并把回調(diào)結(jié)果(code、state參數(shù))原封不動(dòng)地再返回給最開(kāi)始發(fā)起授權(quán)的業(yè)務(wù)。

的區(qū)別在于,在不使用proxy.your.com的時(shí)候,你從應(yīng)用發(fā)起微信授權(quán)的鏈接應(yīng)該是這樣的:

https://open.weixin.qq.com/connect/qrconnect?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2F&response_type=code&scope=snsapi_login&state=584bc87e11ff37492#wechat_redirect

用了proxy.your.com之后,這個(gè)授權(quán)鏈接就應(yīng)該是這樣的:

http://proxy.your.com/?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2Flogin%2Fnotify&response_type=code&scope=snsapi_base&state=584bc87e11ff37492&device=pc

后面這個(gè)鏈接跟上面的比:

1. 后面的鏈接中的host變成了proxy.your.com,也就是代理的授權(quán)回調(diào)域名;

2. 后面的多了一個(gè)device參數(shù),這個(gè)是必要的。因?yàn)槲⑿舙c端跟移動(dòng)端的授權(quán)地址是不一樣的,而后面的鏈接是發(fā)送個(gè)proxy.your.com的,所以需要多加個(gè)參數(shù)告訴它在轉(zhuǎn)發(fā)給授權(quán)申請(qǐng)給微信的時(shí)候,是用PC端還是移動(dòng)端的授權(quán)地址。

如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題

整體方案思路:

如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題

以上就是如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


文章題目:如何解決微信授權(quán)回調(diào)頁(yè)面域名只能設(shè)置一個(gè)的問(wèn)題-創(chuàng)新互聯(lián)
文章鏈接:http://www.yuzhuanjia.cn/article/edieh.html
主站蜘蛛池模板: 91理论片午午伦夜理片久久 | 国产v亚洲v天堂在线 | 白丝护士高潮喷水免费网站 | 午夜无码乱码在线观看 | 国产百万高清管道内窥镜 | 海角国精产品一区一区三区糖心行业总结 | 91久久偷偷做嫩草影院电影 | 午夜影视啪啪免费体验区深夜 | 91精品国产综合久久香蕉爱欲 | av无码精品一区二区三区三级 | 91导航小污女导航天天夜夜爽 | 高潮喷水在线视频在线 | 97伦理影院[作者] | 91麻豆精品国产91久久久久久久久 | 91久久精品美女高潮喷水白 | 97综合天天国产人人欧美 | 99视频在线免费观看 | 午夜a级理论片 | 一区二区三区视频免费在线观看 | 午夜性色福利视频 | 国产av精品一区二区三区小说小说最新章节免费阅读 | 午夜免费成人在线电影 | 91视频app下载污污 | 97久久久久 | av无码一区二区乱子伦 | 午夜成人亚洲理论片在线观看 | 国产av无码专区亚洲八aⅴ | 东京热激情无码专区 | 91高清国内自产 | 日韩av中文字幕免费在线观看 | 91精品啪在线观看国产色 | 91精品国产高清片久久久久久 | 午夜福利午夜时刻免费观看 | 国产av无码一 | 丁香五六月婷婷 | av无码免费在线一区二区三区 | 91青青草久久 | 成人污网在线观看 | WWW.亚洲最大夜色伊人 | 91精品国产综合久久四虎久久无码一级 | av无码中文字幕不卡一二三区 |