Maison > développement back-end > tutoriel php > Comment obtenir des informations de base sur les utilisateurs suivant la plateforme publique WeChat avec PHP

Comment obtenir des informations de base sur les utilisateurs suivant la plateforme publique WeChat avec PHP

墨辰丷
Libérer: 2023-03-30 13:34:02
original
6402 Les gens l'ont consulté

Cet article présente principalement comment PHP peut obtenir les informations de base des utilisateurs suivant la plateforme publique WeChat. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Combiner WeChat avec des sites Web tiers est une solution que de nombreux clients demandent souvent. Voici une brève introduction pour obtenir des informations de base sur les utilisateurs de WeChat et se connecter directement sur des sites Web tiers.

Lorsqu'un compte public WeChat suit un compte officiel, un OpenID unique sera généré. À ce moment-là, nous devons l'utiliser pour demander au serveur WeChat d'obtenir les informations de base de l'utilisateur, notamment son avatar, son surnom, etc. .

Pour des instructions plus détaillées, veuillez vous référer à la documentation de développement WeChat.

Les étapes pour obtenir sont les suivantes :

1 Étape 1 : L'utilisateur s'engage à autoriser et obtenir le code
2 Étape 2 : Échanger le code contre access_token d'autorisation de page Web
3 Étape 3 : Actualiser access_token (si nécessaire)
4 Étape 4 : Extraire les informations utilisateur (besoin d'avoir la portée snsapi_userinfo)
5 Pièce jointe : Vérifiez si le certificat d'autorisation (access_token) est valide

1. Sur la plateforme publique WeChat - Developer Center : Obtenez les informations de base de l'utilisateur via l'autorisation Web : cliquez sur "Modifier" et configurez le nom de domaine de rappel de la page Web

2. Autorisation de l'utilisateur pour obtenir le code

Ressources requises :

$appid = '******************'
$appsecret = '***** ********************';

Remarque : redirect_url est l'adresse du lien de rappel pour la redirection après autorisation. Veuillez utiliser le code urlencode pour traiter le lien.

Ajoutez le $url = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid='.$appid.'&redirect_uri=http%3A% configuré à l'entrée du site Web et demander l’accès à l’url d’appel.

Lorsque l'utilisateur l'autorisera, le nom de domaine défini sera rappelé et le code dont nous avons besoin sera intégré au paramètre url. Nous pouvons directement utiliser $_GET['code'] pour l'obtenir. !

3. Obtenez l'autorisation de page Web access_token et openid via le code

$token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid='.$ appid .'&secret='.$appsecret.'&code='.$code.'&grant_type=authorization_code';

$token = json_decode(file_get_contents($token_url));

$opendid= $token-> openid ;
$access_token = $token->access_token;

4. Obtenir des informations sur l'utilisateur

$info_url = 'https://api.weixin.qq.com/sns/ userinfo ?access_token='.$access_token.'&openid='.$opendid.'⟨=zh_CN';

$info = json_decode(file_get_contents($info_url));

$data['name'] = $ info ->nickname;
$data['image'] = $info->headimgurl;
print_r($info);

5. Après avoir obtenu l'openid de l'utilisateur et d'autres informations, Nous pouvons le stocker dans la base de données. Tant qu'il y a un openid, cela équivaut à ce que l'utilisateur WeChat se soit connecté au site !

Utilisez le access_token obtenu par AppID et AppSecret pour obtenir les informations de base de l'utilisateur via le jeton d'accès global

Lorsque l'utilisateur suit ou répond à un message, le l'OpenID de l'utilisateur peut être obtenu

Le FromUserName est 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>
Copier après la connexion

2 Utilisez ensuite l'interface access_token pour demander le jeton d'accès global

https://api.weixin. .qq.com/ cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

Résultat renvoyé :


3. Utilisez ensuite global ACCESS_TOKEN pour obtenir les informations détaillées d'OpenID
{
 "access_token": "NU7Kr6v9L9TQaqm5NE3OTPctTZx797Wxw4Snd2WL2HHBqLCiXlDVOw2l-Se0I-WmOLLniAYLAwzhbYhXNjbLc_KAA092cxkmpj5FpuqNO0IL7bB0Exz5s5qC9Umypy-rz2y441W9qgfnmNtIZWSjSQ",
 "expires_in": 7200
}
Copier après la connexion

https://api .weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID

Renvoie comme suit :


{

"subscribe": 1,

"openid": " oLVPpjqs2BhvzwPj5A-vTYAX4GLc",
"nickname": "Bébé hérisson",
"sex": 1,
"langue": "zh_CN",
"ville ": "Shenzhen",
"province": "Guangdong",
"country": "Chine",
"headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXax S doZG6iane5ko9H30krIbzGv /0",
"subscribe_time " : 1386160805
}

À ce stade, les informations de base de l'utilisateur sont obtenues.

Cette méthode est la plus appropriée pour que les utilisateurs répondent avec un message de bienvenue au suivant + le pseudo de l'utilisateur lorsqu'ils suivent, comme indiqué dans la réponse lorsqu'ils suivent le compte public ci-dessous. Scannez le code QR pour en faire l'expérience.

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Comment télécharger des fichiers dans TP5 en PHP

Objet de requête TP5 Request en PHP Méthode

Comment implémenter un modèle de conception monomorphe en php

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal