Maison Applet WeChat Développement de mini-programmes Explication détaillée et exemples de l'applet WeChat wx.request (méthode d'appel d'interface)

Explication détaillée et exemples de l'applet WeChat wx.request (méthode d'appel d'interface)

Jan 09, 2017 am 10:50 AM

Applet WeChat wx.request ---- Méthode d'appel d'interface

Récemment, j'ai développé une version applet WeChat du système de gestion des tâches. J'ai rencontré quelques problèmes lors de l'envoi d'interfaces au backend Java.

Interface officielle

L'interface officielle s'appelle wx.request et la méthode de requête est relativement simple. Voici un exemple de requête donné sur le site officiel.

wx.request({
 url: 'test.php', //仅为示例,并非真实的接口地址
 data: {
   x: '' ,
   y: ''
 },
 header: {
   'content-type': 'application/json'
 },
 success: function(res) {
  console.log(res.data)
 }
})
Copier après la connexion

Problèmes

Le type de contenu dans l'en-tête de la requête wx.request est par défaut application/json. Si nous voulons modifier la méthode, par exemple en utilisant "application/x-www-form-urlencoded", nous constaterons que l'application/json par défaut. n'est pas remplacé dans les informations d'en-tête de la requête.Au lieu de cela, cette méthode a été ajoutée.De plus, lors d'une requête avec jquery.ajax, même si la méthode application/json est utilisée pour la requête, le format de données obtenu est différent. est utilisée, ajax convertira les données de la demande sous la forme &name1=value1&name2 =value2, cela posera des problèmes lors de l'analyse des données de la demande en fonction du type de contenu. Je ne sais pas si WeChat fait cela intentionnellement ou s'il s'agit simplement d'un bug. Bref, cela m'a causé des ennuis inutiles.

L'applet WeChat envoie des requêtes https. Vous pouvez utiliser http lors du débogage local. Si vous vérifiez la méthode de requête et le nom de domaine lors du test sur un téléphone mobile, si cela est illégal, l'erreur suivante sera signalée :

微信小程序 wx.request(接口调用方式)详解及实例

Afin de faciliter la requête, nous pouvons faire une simple encapsulation de wx.request, ce qui sera beaucoup plus pratique lorsque nous l'appellerons à nouveau. Le code est le suivant :

var app = getApp();
function request(url,postData,doSuccess,doFail,doComplete){
   var host = getApp().conf.host;
   wx.request({
    url: host+url,
    data:postData,
    method: 'POST', 
    success: function(res){
     if(typeof doSuccess == "function"){
       doSuccess(res);
     }
    },
    fail: function() {
     if(typeof doFail == "function"){
       doFail();
     }
    },
    complete: function() {
     if(typeof doComplete == "function"){
       doComplete();
     }
    }
   });
 }
}
 
module.exports.request = request;
Copier après la connexion

Si une interface est fréquemment utilisée à différents endroits, j'ai initialement pensé à écrire une fonction, puis à l'exposer pour d'autres appels js. Cependant, j'ai découvert plus tard que la définition de async dans wx.request n'est pas valide et ne peut envoyer que des requêtes asynchrones. Je veux écrire une fonction. Il est plus difficile de renvoyer les données obtenues en appelant l'interface.

Merci d'avoir lu, j'espère que cela aidera tout le monde, et merci pour votre soutien à ce site !

Pour des explications plus détaillées et des exemples d'articles liés à l'applet WeChat wx.request (méthode d'appel d'interface), veuillez faire attention au site Web PHP chinois !


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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)