鍍金池/ 問(wèn)答/HTML5  C#/ 微信公眾號(hào)開發(fā)網(wǎng)頁(yè)登錄授權(quán)

微信公眾號(hào)開發(fā)網(wǎng)頁(yè)登錄授權(quán)

大家好,我現(xiàn)在遇到了關(guān)于網(wǎng)頁(yè)登錄授權(quán)的問(wèn)題。
我的h5頁(yè)面是vue寫的,后臺(tái)是WebAPi頁(yè)面。我當(dāng)時(shí)的思路是:當(dāng)用戶進(jìn)入首頁(yè)時(shí),先判斷是否有code,如果沒有就跳轉(zhuǎn)微信的登錄授權(quán)頁(yè)面。當(dāng)用戶點(diǎn)擊授權(quán)后再有微信跳轉(zhuǎn)回來(lái)。

跳轉(zhuǎn)到微信授權(quán)頁(yè)面地址:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxb151e12a34cc0c35&redirect_uri=http%253a%252f%252fwm.52xdz.top%252f%2523%252f&response_type=code&scope=snsapi_userinfo&state=20180121101028814&uin=MjYzNDA1NDgw&key=c705caf0549e8234ec1a024281f7839a03bf5e2e70a069bd1bdca0a402ab0e2cc5a3042d810ccace4e89af9bb494dec8&pass_ticket=a7nze2OM+L+VnfduTlbTFfQuJmPoFXFX2kDFO9LGonhwiiOXR46Yr7kn4r3wXA+XV7jAnOmna+Ng3fAVgHlLnA==

我的首頁(yè)面地址時(shí):http://xxxx.com,由于是vue寫的頁(yè)面所以它加載的首頁(yè)地址是http://xxxx.com/#/

實(shí)際微信返回的回掉地址是:http://xxxx.com/?code=xxx&state=xxx#/

由于生成這樣的地址后,我的vue首頁(yè)不能獲取到code值,所以就出現(xiàn)了類似于死循環(huán)的那樣,調(diào)到微信等授權(quán),再調(diào)回首頁(yè),再跳到微信等授權(quán)~~~~~~·

回答
編輯回答
不二心

vue是單頁(yè)面開發(fā),應(yīng)該是前后端分離。

例子:

vue 首頁(yè) http://www.ceshi.com/#vueindex

授權(quán)獲取 連接 http://www.ceshi.com/
微信回調(diào) http://www.ceshi.com?code=xxxx

解決方案

微信授權(quán)控制器中,http://www.ceshi.com?return_url=vueindex&code=xxxx
根據(jù) return_url中的內(nèi)容,跳轉(zhuǎn)到相應(yīng)的前端頁(yè)面地址

你后續(xù)還會(huì)遇到其它問(wèn)題:請(qǐng)參考vue+微信公眾號(hào)

2017年6月22日 06:45
編輯回答
撿肥皂

根據(jù)url取出code不會(huì)?

2017年5月20日 07:22
編輯回答
眼雜

這個(gè)由于是微信的機(jī)制所以你沒辦法處理,只能考慮自己本地修改做兼容,或者寫一個(gè)中間頁(yè)面,由中間頁(yè)面自行做跳轉(zhuǎn),例如你定義一個(gè)

http://xxx.com/wechat/redirect.html?redirect_url=http:%2F%2Fxxxx.com%2F%23%2F

為微信的跳轉(zhuǎn)返回頁(yè)面。

2018年1月8日 15:53
編輯回答
壞脾滊

需要后臺(tái)配合的。
微信回調(diào)地址到http://xxx.com/site/redirect?code=xxx&state=xxx。

然后site/redirect這個(gè)路由再跳轉(zhuǎn)到http://xxx.com/#/?code=xxx&state=xxx

我現(xiàn)在一個(gè)移動(dòng)端的站就是這么處理的,沒有其他坑,改動(dòng)也小

2017年6月25日 06:34