微信回調方式說明

一 回調方法定義

控制器中定義回調方法

@GetMapping("callback")
public String callback(String code, String state, HttpSession session) {
    System.out.println("callback被調用");
    System.out.println("code:" + code);
    System.out.println("state:" + state);
    return null;
}

用戶點擊“確認登錄”後,微信服務器會向穀粒學院的業務服務器發起回調,回調地址就是yml中配置的redirecturi。

二 內網穿透

1 開發步驟

步驟:開通並啓動內網穿透ngrok > 開放平臺配置回調地址 > yml配置

yml配置:

wx:
  open:
    # 微信開放平臺 appid
    appId: <微信開放平臺 appid>
    # 微信開放平臺 appsecret
    appSecret: <微信開放平臺 appsecret>
    # 微信開放平臺 重定向url(guli.shop需要在微信開放平臺配置)
    redirectUri: <微信中你配的回調地址>

注意:yml文件中redirecturi的域名必須和開放平臺中應用配置的授權回調域的值完全一致,

但是開放平臺上的一個應用只能配置一個回調地址,提供給一個開發者使用。

2 開通方式

ngnok的地址:http://ngrok.cc

開通方式:

3 使用方式

下載客戶端,啓動客戶端

4 原理說明

三 外網服務器跳轉

解決多人無法共享回調域設置的問題。

步驟:將跳轉程序部署到外網服務器 > 開放平臺配置回調地址 > yml配置

跳轉程序:部署在guli.shop上

guli.shop服務器的接口可以接收微信的回調請求,將微信回調請求轉發到開發者的localhost的8160端口,並傳遞code和state參數

開放平臺配置:

授權回調域一般設置爲一個內網穿透地址,例如使用ngrok工具申請一個內網穿透地止

yml配置

wx:
  open:
    # 微信開放平臺 appid
    appId: wxed9954c01bb89b47
    # 微信開放平臺 appsecret
    appSecret: a7482517235173ddb4083788de60b90e
    # 微信開放平臺 重定向url(guli.shop需要在微信開放平臺配置)
    redirectUri: http://guli.shop/api/ucenter/wx/callback8160

四 測試回調跳轉服務器

訪問回調服務器

http://guli.shop/api/ucenter/wx/callback8160?code=1234&state=666

跳轉到

http://localhost:8160/api/ucenter/wx/callback?code=1234&state=666

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章