Maison  >  Article  >  développement back-end  >  Explication détaillée des exemples d'utilisation de l'interface de statistiques de données WeChat dans la version PHP

Explication détaillée des exemples d'utilisation de l'interface de statistiques de données WeChat dans la version PHP

怪我咯
怪我咯original
2017-07-04 13:16:221747parcourir

Cet article présente principalement l'utilisation de la version PHP de l'interface de statistiques de données WeChat et analyse les fonctions de l'interface de statistiques de données PHP WeChat et les compétences d'utilisation associées sous forme d'exemples. Les amis dans le besoin peuvent s'y référer

Les exemples de cet article décrivent comment utiliser la version PHP de l'interface de statistiques de données WeChat. Je le partage avec vous pour votre référence. Les détails sont les suivants :

La version PHP de l'interface de statistiques de données WeChat est en fait très simple à utiliser. Cette fonction n'était pas disponible dans la version précédente mais a été ajoutée dans. versions ultérieures. Jetons un coup d'œil à une version PHP Exemple d'interface de statistiques de données WeChat :

WeChat a publié un nouveau portail d'interface d'analyse de données le 6 janvier :

Attention :

1. La base de données des comptes publics côté interface ne stocke les données qu'après le 1er décembre 2014, et la

requête ne pourra pas le faire. date avant cela. Même si elles sont trouvées, ce sont des données sales non fiables ;

2. Les développeurs sont invités à enregistrer les données dans leur propre base de données après avoir appelé l'interface pour obtenir les données, ce qui accélérera la suivante. l'accès de l'utilisateur et réduit également le coût. Perte inutile des appels de l'interface côté WeChat.

L'interface de données d'analyse utilisateur fait référence à l'interface utilisée pour obtenir les données d'analyse des utilisateurs dans le module de statistiques de données du site officiel de la plateforme publique. La liste des interfaces spécifiques est la suivante (il n'y a pas encore d'interface de données d'attribut utilisateur. ):

Durée maximale La durée fait référence à la plage de temps maximale pendant laquelle des données peuvent être obtenues lors d'un appel d'interface. Par exemple, la durée maximale est de 7, ce qui signifie que jusqu'à 7 jours de données peuvent être obtenues. une fois. Veuillez obtenir la valeur réelle de access_token via "Get access_token".

Description de la demande d'appel d'interface

L'interface de données d'analyse utilisateur (y compris toutes les interfaces de la liste d'interfaces) doit POST l'exemple de paquet de données suivant à l'adresse d'appel d'interface correspondante :

{
  "begin_date": "2014-12-02",
  "end_date": "2014-12-07"
}

Instructions pour appeler les paramètres :

Après un examen approximatif, il est encore en phase de test interne, mais car il s'agit d'une nouvelle interface, elle doit améliorer les classes d'interface avancées WeChat utilisées sur ce site. Modifiez comme suit :

Ajoutez de nouvelles constantes d'interface à la classe :

API_DATA_CUBE_URL = 'https://api.weixin.qq.com/datacube',
API_TYPE_DATA = 'datacube'
Modifiez la méthode d'appel : Parce qu'elle nécessite que le paramètre URL soit uniquement le jeton d'accès, c'est la même chose que le JSON précédent, mais dans le jugement Ajoutez le jugement de datacube (note :

l'annotation a été expliquée) :

public function call($api_name, $params = array(), $type = self::GET, $api_type = self::API_TYPE_CGI) {
    //加入datacube后,用switch来组接口URL
    switch(true) {
      case $api_type == self::API_TYPE_PAY :
        $url = self::PAY_URL.$api_name;
        break;
      case $api_type == self::API_TYPE_DATA:
        $url = self::API_DATA_CUBE_URL.$api_name;
        break;
      default :
        $url = self::API_URL_PREFIX.$api_name;
    }
    if (in_array($api_name, self::$_no_need_token_apis)) {
      $res = $this->request($url, $params, $type);
      if ($res) {
        return $res;
      }
    }
    $this->_access_token = $this->getAccessToken();
    if ($this->_access_token) {
      //加多个or判断带上access_token
      if ($type == self::JSON || $api_type == self::API_TYPE_DATA) {
        $url = $url.'?access_token='.$this->_access_token;
      } else {
        $params['access_token'] = $this->_access_token;
      }
      $res = $this->request($url, $params, $type);
      if ($res) {
        return $res;
      }
    }
    return false;
}
Enfin, la méthode CLI appelle une interface getinterfacesummary dans le document

Débogage (remarque : c'est la méthode POST pour interfacer) :

if (isset($argc) && $argc >= 1 && $argv[0] == FILE) {
  $client = new WechatJSON(array(
    WechatJSON::APP_ID => 'wx78sfsd023744d51',
    WechatJSON::APP_SECRET => '9ba3476db1fsfsff512esf2f630fb9',
  ));
  $res = $client->call('/getinterfacesummary', array(
    'begin_date' => '2014-12-01',
    'end_date' => '2014-12-31'
  ), WechatJSON::POST, WechatJSON::API_TYPE_DATA);
  if (!$res) {
    var_dump($client->_error);
  }
  var_dump($res);
}
Le résultat de l'opération, bien que l'API ne soit pas autorisée (après tout, ce sont toujours les partenaires qualifiés des tests internes qui ont l'information, les comptes publics peuvent juste attendre) :

Postscript, à l'avenir Faites une autre tâche Linux et laissez l'arrière-plan lui-même s'exécuter à intervalles de temps donnés (une semaine ou 30 jours) car certaines interfaces de statistiques de données durent 7 jours et certains durent 30 jours. De cette façon, les données sont récupérées puis écrites dans la table de la base de données pour générer des rapports graphiques, vous évitant ainsi d'avoir à enregistrer certaines statistiques que le responsable a déjà enregistrées pour vous !

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