javascript - 微信第三方登錄的問題
問題描述
PC端的應(yīng)用,可以和WAP端的應(yīng)用共用同一個微信的APPID嗎,可以的話那要怎么樣才能設(shè)置不同的回調(diào)
問題解答
回答1:可以。回調(diào)就設(shè)置你的服務(wù)器地址即可,這個服務(wù)器處理微信傳給你的數(shù)據(jù)即可。通常有兩種做法
一 不用回調(diào):
微信提供給客戶端的SDK,客戶端調(diào)用SDK,會換起本地的微信app,然后用戶授權(quán)登錄,再回到客戶端,客戶端會拿到微信sdk返回的token和openid。然后把這個token傳給你的服務(wù)端,服務(wù)端再使用這個token請求微信的接口驗證token是否合法。比如該token請求返回的openid和客戶端所傳的是否一致。如果token合法,服務(wù)端可以記錄相關(guān)信息,然后發(fā)放給客戶端你們自己用的token或者cookie,表示客戶端已經(jīng)登錄。
二 使用回調(diào):
客戶端請求你們的服務(wù),你們的服務(wù)請求微信oauth2的授權(quán)地址,微信會引導(dǎo)重定向到一個h5的網(wǎng)頁,用戶授權(quán)。然后微信會給你的回調(diào)地址發(fā)送一些數(shù)據(jù),例如code。你的服務(wù)器再拿著這些code和相關(guān)的key再請求微信的接口獲取token和openid,服務(wù)器記錄這個openid相關(guān)信息。然后就可以給你的客戶端授權(quán),表示登錄。
相關(guān)文章:
1. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????2. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項3. html按鍵開關(guān)如何提交我想需要的值到數(shù)據(jù)庫4. css - width設(shè)置為100%之后列表無法居中5. ios - vue-cli開發(fā)項目webstrom會在stylus樣式報錯,飆紅,請大神幫忙6. javascript - 一個頁面有四個圖片,翻頁的時候想固定住某個圖片然后翻頁,如何實現(xiàn)呢?7. css3 - 怎么感覺用 rem 開發(fā)的不多啊8. html5 - 用Egret寫的小游戲,怎么分享到微信呢?9. python - 在pyqt中做微信的機器人,要在表格中顯示微信好友的名字,卻顯示不出來,怎么解決?10. objective-c - 自定義導(dǎo)航條為類似美團的搜索欄樣式
