WeChatサービス番号ウェブページのライセンス作成
1916 ワード
サービス番号のウェブページの授権
ウェブページの授権の目的は、WeChatユーザの要求 は、上記のステップ1において、フィードバックを取得した は、ステップ2の です.
穴
フロントエンドは
上記のアドレスはサーバから返されたコールバックアドレスの瞬間値で、すぐに下記のアドレスにリセットされ、フロントエンドが
ウェブページの授権の目的は、WeChatユーザの
openid
を取得することであり、2つの授権方法がある.snsapi_base
とsnsapi_userinfo
と、WeChatユーザは、サービス番号に関心があるかどうかに関わらず、前者はサイレント授権であり、openid
しか獲得できない.後者の方法については、サービス番号に関心を持つユーザはサイレント授権である.関心がない場合は、ユーザが手動で授権ボタンを追加する必要があります.授権のプロセスは:oauth
は、https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
が開発者のAPPID
を記入し、appid
は最終的にジャンプするREDIRECT_URI
を記入し、url
をurl
を使用して符号化するように注意してください.encoder
を、要求を送信した後に、ブラウザからのコールバックSCOPE
にジャンプし、STATE
を1
にパラメータとして携帯している.123
を用いて、code
の送信要求url
を再送信し、code
を取得し、url
にステップ2で取得したredirect_uri/?code=CODE&state=STATE
を充填し、第1の授権方式が使用されるとSTATE
を取得し、CODE
も取得し、ACCESS_TOKEN
も取得した.返した結果のモデルは、{
"access_token":"ACCESS_TOKEN",
"expires_in":7200,
"refresh_token":"REFRESH_TOKEN",
"openid":"OPENID",
"scope":"SCOPE"
}
穴
フロントエンドは
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
を使用して、ハッシュルーティングを使用して、ACCESS_TOKEN
にCODE
が含まれています.上述の第1のステップの要求は、中間にスティッチングしたURL
によって、瞬時にACCESS_TOKEN
によってデフォルトパスにジャンプされて、openid
が後に取れなくなり、第3のステップを実行できなくなり、Angular
を取得することができなくなります.次の図のように上記のアドレスはサーバから返されたコールバックアドレスの瞬間値で、すぐに下記のアドレスにリセットされ、フロントエンドが
url
に届かなくなり、自然に#
に取得できなくなりました.この問題を解決するには、code
のルーティングを非ハッシュモードに変更する必要がある.