Maison  >  Article  >  développement back-end  >  Comment utiliser PHP pour implémenter la fonction de numérisation du code QQ pour obtenir le numéro QQ

Comment utiliser PHP pour implémenter la fonction de numérisation du code QQ pour obtenir le numéro QQ

PHPz
PHPzoriginal
2023-04-06 09:15:242153parcourir

Avec la popularité de l'Internet mobile et des médias sociaux, de plus en plus de sites Web et d'applications choisissent d'utiliser la méthode de connexion au compte QQ pour faciliter la tâche des utilisateurs. Afin de permettre à chacun d'obtenir rapidement un numéro QQ, cet article présentera comment utiliser PHP pour implémenter la fonction de numérisation du code QQ pour obtenir un numéro QQ.

1. Principe de numérisation du code QQ

La connexion par numérisation du code QQ est une méthode de connexion rapide lancée par Tencent. Vous pouvez vous connecter en scannant le code QR. Lors de la numérisation du code, le navigateur de l'utilisateur enverra une demande d'authentification au serveur QQ. Le serveur QQ utilisera le compte QQ de l'utilisateur comme identifiant et renverra un jeton au navigateur. Le navigateur enverra ensuite le jeton au serveur du site Web. Le serveur du site Web envoie le jeton au serveur QQ pour vérification. Une fois la vérification réussie, le serveur du site Web peut obtenir les informations de l'utilisateur et réaliser la fonction de connexion.

2. Obtenez le code QR QQ

Pour utiliser PHP pour implémenter la connexion par code scan QQ, vous devez d'abord obtenir le code QR QQ. Ici, nous pouvons appeler l'interface API de Tencent Open Platform. L'exemple de code est le suivant :

<?php
  $url = "https://graph.qq.com/oauth2.0/show?which=login&display=pc&response_type=code&client_id=YOUR_APPID&redirect_uri=YOUR_CALLBACK_URL&state=STATE";
  echo "<img src=&#39;".$url."&#39; />";
?>

Dans le code ci-dessus, nous devons remplacer notre propre APPID et notre propre adresse de rappel. Le code imprimera l'image générée, que l'utilisateur pourra numériser pour se connecter.

3. Obtenir les informations du compte QQ

Une fois que l'utilisateur aura scanné le code QR, il entrera dans la page de connexion QQ, saisira le mot de passe du compte et le vérifiera. Une fois la vérification réussie, un code d'autorisation sera renvoyé. Ce code est le paramètre nécessaire pour que nous puissions appeler l'API afin d'obtenir l'OpenID et l'AccessToken de l'utilisateur.

Exemple de code pour utiliser PHP pour obtenir des informations sur le compte QQ :

<?php

  $app_id = "YOUR_APPID";
  $app_key = "YOUR_APPKEY";
  $redirect_uri = "YOUR_CALLBACK_URL";
  $code = $_GET["code"];

  $url = "https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=".$app_id."&client_secret=".$app_key."&code=".$code."&redirect_uri=".$redirect_uri;

  $res = file_get_contents($url);
  parse_str($res, $data);

  $access_token = $data[&#39;access_token&#39;];

  $url = "https://graph.qq.com/oauth2.0/me?access_token=".$access_token;

  $res = file_get_contents($url);

  $pos = strpos($res, "(");
  $res = substr($res, $pos+1);
  $pos = strrpos($res, ")");
  $res = substr($res, 0, $pos);

  $data = json_decode($res);

  $openid = $data->openid;
?>

Dans le code ci-dessus, nous devons remplacer notre APPID, APPKEY et notre adresse de rappel. Ce code sera appelé via l'interface API pour obtenir l'OpenID de l'utilisateur. Après avoir obtenu l'OpenID, nous pouvons obtenir les informations détaillées de l'utilisateur en appelant l'interface API d'informations utilisateur QQ.

IV.Résumé

Grâce à l'introduction ci-dessus, nous pouvons constater qu'il n'est pas très difficile d'utiliser PHP pour implémenter la connexion par code scan QQ. Dans les applications réelles, nous devrons peut-être traiter les données renvoyées plus en détail et les combiner avec une technologie frontale Web pour obtenir une meilleure expérience utilisateur.

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!

Déclaration:
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