WeChat OAuth2.0 Web認証でコールバックドメイン名が1つしか設定できない問題を解決
最近、WeChat パブリック アカウントの Web ページ認証ドメイン名が複数のドメインの構成をサポートできることが判明しました。現在、このプロジェクトの存在意義は以前ほど強くありません。現時点での唯一の用途は、複数のドメイン名を 1 か所で処理できることです。
get-weixin-code.html
WeChat 承認コールバック ドメイン名のディレクトリにデプロイします。
使用方法は WeChat を通じて直接コールバックする方法と似ていますが、コールバック アドレスがget-weixin-code.html
が配置されているアドレスに変更され、 response_type
パラメーターが省略される点が異なります ( code
のみであるため)。 #wechat_redirect
(修正済み) は、 get-weixin-code.html
に自動的に追加されます。
get-weixin-code.html
ページは WeChat からコードを取得した後、 redirect_uri
に入力された URL にジャンプして戻り、 code
とstate
URL の後に置きます。
WeChat パブリック プラットフォーム -> インターフェイス権限 -> Web ページ認証に移動して、基本的なユーザー情報を取得 -> 変更し、認証コールバック ページのドメイン名 (例: www.abc.com
を入力します。
get-weixin-code.html
ドメイン名www.abc.com
の下にデプロイします。ルート ディレクトリである必要はありません。例: http://www.abc.com/xxx/get-weixin-code.html
ページhttp://www.xyz.com/hello-world.html
WeChat 認証を取得する必要があると仮定すると、次のアドレスを使用して認証を取得する必要があります: http://www.abc.com/xxx/get-weixin-code.html?appid=XXXX&scope=snsapi_base&state=hello-world&redirect_uri=http%3A%2F%2Fwww.xyz.com%2Fhello-world.html
これは最終的に次のようなアドレスにジャンプします: http://www.xyz.com/hello-world.html?code=XXXXXXXXXXXXXXXXX&state=hello-world
、認証code
とカスタマイズされたstate
パラメータを取得します。
このプロジェクトに貢献してくれた次の友人に感謝します (順不同)
星769706697
デビッドqr
天河1986
アンソニー黄001
サンジュム
q250305917
キスチャン
シェン・イーソン1989
もう 1 つのジャンプにより、WeChat がコールバック ドメイン名の設定を 1 つだけ制限するという問題は解決されます。
プロジェクト展開の美しさと引き換えに、ユーザー エクスペリエンスが多少犠牲になります。1 つのドメイン名でさまざまなプロジェクトを展開する必要はありません。
そのようなニーズがある場合は、このプロジェクトを使用できます
プルリクエストの送信を歓迎します
このプロジェクトを使用する前に、まず WeChat 承認コールバック プロセスを理解することをお勧めします。
多くの友人が、サードパーティの WeChat プラットフォームをサポートする方法を私に尋ねます。これには、さまざまなサードパーティ プラットフォームの認証方法を理解し、その認証方法やリクエスト パラメータなどに精通している必要があります。 Web サイトの入り口の URL で許可されている場合、このプロジェクトを使用して入り口の URL を上記の方法に変更できます。プロセス中に特定のページで許可を取得した場合、アドレスを取得することはできません。したがって、このプロジェクトは適用されません。