WeChat 公式アカウントで openId を取得 - 開発段階

1. 登録試験番号

マイクロチャネルパブリックプラットフォーム

2. 取得ロジックを理解する

WeChat の openid を取得するには、WeChat が提供する URL にアクセスしてコードを取得する必要があります。
WeChat が提供する別の URL にアクセスして、openId を取得します。

2 つのリンクは次のとおりです。

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE

 https://api.weixin.qq.com/sns/oauth2/access_token?appid=AppId&secret=AppSecret&code=CODE&grant_type=authorization_code

3. プレビュー環境を選択します

最初のリンクは WeChat クライアントで開く必要があります。WeChat 開発者ツールを選択できます

公式アカウント Web ページ プロジェクトを選択

開いたら、アドレスバーに最初の URL アドレスを入力し、続いてリダイレクトされた Web ページを入力します。

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxa5b9c7f2a5ab9d1e&redirect_uri=http://192.168.3.130:3000&response_type=code&scope=snsapi_base&state=STATE

 注: この redirect_uri に入力されたアドレスは、公式アカウントまたはテスト アカウントの Web ページ アカウントで設定する必要があります

 ジャンプ後、アドレス バーに code と state という 2 つのパラメーターがあることがわかります。この時点で、必要なコードを取得できます。

 4.openIdを取得する

コードを取得したら、2 番目のリンクから必要なコンテンツを入力し、openId を取得できます。

バックエンドから openId を取得することをお勧めします。クロスドメイン、コードが使用できないなど、一連の問題が発生する可能性があります。コードは 1 回しか使用できません。

@GetMapping("/getOpenId")
    @ApiOperation("获取OpenId")
    public JSONObject getOpenId(@RequestParam("code") String code){
        String url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code={code}&grant_type={grant_type}";
        HashMap<String,String> params = new HashMap<>();
        params.put("appid","");
        params.put("secret","");
        params.put("code",code);
        params.put("grant_type","authorization_code");
        String result = new RestTemplate().getForEntity(url, String.class, params).getBody();
        return JSONObject.fromObject(result);
    }

おすすめ

転載: blog.csdn.net/weixin_42078172/article/details/127917025