ホームページ >WeChat アプレット >WeChatの開発 >基本的なユーザー情報を取得するための WeChat パブリック プラットフォームを開発する

基本的なユーザー情報を取得するための WeChat パブリック プラットフォームを開発する

迷茫
迷茫オリジナル
2017-03-25 15:05:392436ブラウズ

この記事では、WeChat パブリック プラットフォームでフォローされているユーザーのニックネーム、アバター、性別、国、省、都市、言語などの基本情報を取得する方法を紹介します。
この記事の方法では、サブスクリプション アカウント、サービス アカウント、カスタム メニューのさまざまなシナリオを取り上げます。高度なインターフェイス権限があるかどうかに関係なく、ログインをシミュレートせずに基本的なユーザー情報を取得する方法があります。

この記事では、2 つの異なるアクセス トークンが異なる方法で生成されるという事実に特に注意を払う必要があります。1 つは AppID と AppSecret を使用して取得された access_token で、もう 1 つは OAuth2 で生成された access_token です。 0 認証。Fangbei Studio では、それぞれ グローバル アクセス トークン および 認可されたアクセス トークンと呼びます。

1. グローバルアクセストークンを通じてユーザーの基本情報を取得します

ユーザーがメッセージをフォローするかメッセージに返信すると、ユーザーのOpenIDを取得できます

<xml>
    <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName>
    <FromUserName><![CDATA[ollB4jv7LA3tydjviJp5V9qTU_kA]]></FromUserName>
    <CreateTime>1372307736</CreateTime>
    <MsgType><![CDATA[event]]></MsgType>
    <Event><![CDATA[subscribe]]></Event>
    <EventKey><![CDATA[]]></EventKey></xml>

FromUserNameはOpenIDです

その後、 access_token インターフェースで取得を要求します グローバル Access Token

は結果を返します:

{
    "access_token": "NU7Kr6v9L9TQaqm5NE3OTPctTZx797Wxw4Snd2WL2HHBqLCiXlDVOw2l-Se0I-WmOLLniAYLAwzhbYhXNjbLc_KAA092cxkmpj5FpuqNO0IL7bB0Exz5s5qC9Umypy-rz2y441W9qgfnmNtIZWSjSQ",
    "expires_in": 7200
}

その後、グローバル ACCESS_TOKEN を使用して OpenID の詳細情報を取得します

戻り値は次のとおりです:

{
    "subscribe": 1,
    "openid": "oLVPpjqs2BhvzwPj5A-vTYAX4GLc",
    "nickname": "刺猬宝宝",
    "sex": 1,
    "language": "zh_CN",
    "city": "深圳",
    "province": "广东",
    "country": "中国",
    "headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0",
    "subscribe_time": 1386160805
}

この時点で基本情報ユーザーの情報を取得します。

下記の公開アカウントをフォローした際の返信のように、フォロー時にフォロー歓迎のメッセージ+ユーザーニックネームを返信するのに最適な方法です。 QRコードを読み取って体験してください。

2. OAuth2.0 メソッド を使用して認証ページ をポップアップし、ユーザーの基本情報を取得します

1. 最初にコールバック ドメイン名を設定します

ユーザーがクリックすると、アプリケーション認証インターフェースがポップアップします

コールバック URL には次のようにリンクされています

その後、そのコードを使用して交換します。 oauth2認証のaccess_token

URLは以下の通りです:

認可されたアクセストークンを取得:

{
    "access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw",
    "expires_in": 7200,
    "refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5CZPAwZksiuz_6x_TfkLoXLU7kdKM2232WDXB3Msuzq1A",
    "openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc",
    "scope": "snsapi_userinfo,"
}

認可されたアクセストークンを使用してユーザー情報を取得します

以下のように戻ります

{
    "openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc",
    "nickname": "刺猬宝宝",
    "sex": 1,
    "language": "zh_CN",
    "city": "深圳",
    "province": "广东",
    "country": "中国",
    "headimgurl": "http://wx.qlogo.cn/mmopen/utpKYf69VAbCRDRlbUsPsdQN38DoibCkrU6SAMCSNx558eTaLVM8PyM6jlEGzOrH67hyZibIZPXu4BK1XNWzSXB3Cs4qpBBg18/0",
    "privilege": []
}

ユーザー情報の取得が完了しました。

最終的なユーザー情報は以下の通りです

この方法の詳細なプロセスは、WeChatパブリックプラットフォーム開発(71)OAuth2.0 Web認証を参照してください

この方法は適切です、

1. サークル内でユーザー情報を取得します。

2. Web ページでユーザー情報を取得します。

3. カスタムメニューでユーザー情報を取得します。

すでに OAuth2.0 Web ページ認証を持っているサービス アカウントでこの方法を使用する場合、方法 3 の方法に自動的に変換され、「WeChat ログイン」プロンプト ボックスが表示されないことに注意してください。

WeChatで以下のQRコードをスキャンし、「承認」と返信すると、この取得方法を体験できます。

3. OAuth2.0 を通じて 認証ページをポップアップせずにユーザーの基本情報を取得

次の結果を返します

{
    "access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-oJ9VmO-0Z-_izfnSAX_s0aqDsYkW4s8W5dLZ4iyNj5Y6vey3dgDtFki5C8r6D0E6mSVxxtb8BjLMhb-mCyT_Yg",
    "expires_in": 7200,
    "refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-oJ9VmO-0Z-_izfnSAX_s0aqDsYkW4s8W5dLZ4iyNj5YBkF0ZUH1Ew8Iqea6x_itq13sYDqP1D7ieaDy9u2AHHw",
    "openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc",
    "scope": "snsapi_base"
}

:

{
    "access_token": "NU7Kr6v9L9TQaqm5NE3OTPctTZx797Wxw4Snd2WL2HHBqLCiXlDVOw2l-Se0I-WmOLLniAYLAwzhbYhXNjbLc_KAA092cxkmpj5FpuqNO0IL7bB0Exz5s5qC9Umypy-rz2y441W9qgfnmNtIZWSjSQ",
    "expires_in": 7200
}

が戻ります以下の通り:

{
    "subscribe": 1,
    "openid": "oLVPpjqs2BhvzwPj5A-vTYAX4GLc",
    "nickname": "刺猬宝宝",
    "sex": 1,
    "language": "zh_CN",
    "city": "深圳",
    "province": "广东",
    "country": "中国",
    "headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0",
    "subscribe_time": 1386160805
}

ユーザーの基本情報の取得に成功しました。

これは、Web ページで使用するための OAuth2.0 Web ページ認証をすでに持っているサービス アカウントに適しており、「WeChat ログイン」ページはポップアップしません。ユーザーへの中断を軽減します。

4. どの方法が最適ですか?

ご参考までに

1. サービス アカウント
には高度なインターフェイス権限があります: メッセージ返信のカスタマイズ メニューで 3 つの方法を使用できます (方法 3 は招商銀行クレジット カード センターで使用され、方法 2 は康盛マイクロ コミュニティで使用されます)。高度なインターフェイス権限: メッセージの返信で使用されます。 方法 2 カスタム メニューの方法 2 を使用します (高度な権限はなく、他の人の Appid と AppSecret を借用する必要があります)
2. サブスクリプション アカウント
は認証されており、ユーザー情報を取得する権限を持っています。メッセージ返信の方法1 方法2 (高度な権限は必要ありません) カスタムメニューで使用する 他の人のAppidとAppSecretを借用する権限が必要)
認証されていないため、ユーザー情報を取得する権限がありません 方法2を使用するカスタムメニューにはメソッドはありません。メッセージの返信で (高度な権限はありません。他の人の Appid と AppSecret を借用する必要があります。これは Fangbei Studio が使用するものです

以上が基本的なユーザー情報を取得するための WeChat パブリック プラットフォームを開発するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。