Ici, nous déclarons d'abord un bug dans le document de l'applet, qui empêche le serveur de recevoir les paramètres lors des requêtes
Exemple de code :
1 2 3 4 5 6 7 8 9 10 11 12 13 | 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
Le contenu- Tapez l'en-tête doit être un type de contenu en minuscules afin que le serveur puisse recevoir les paramètres. J'ai du mal depuis longtemps et cela ne fonctionne toujours pas après avoir changé de serveur. Il s'avère que c'est là le problème. Le paramètre est dans la charge utile de la requête et le serveur ne peut pas le recevoir. Après avoir utilisé la conversion suivante,
1 2 3 4 5 6 7 | function json2Form(json) {
var str = [];
for ( var p in json){
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(json[p]));
}
return str.join( "&" );
}
|
Copier après la connexion
.
Photo : 1.png
![点击查看原图 Encapsulation des requêtes réseau de l'applet WeChat](/static/imghw/default1.png)
Au final, j'ai pensé que c'était un problème de type de contenu. En fin de compte, c'était OK de le changer en minuscules. Je pense que WeChat, une équipe tellement géniale, a commis une erreur très stupide, ce qui a tourmenté mon développeur. Ne me dites pas, entrons dans le code.
1. Classe de requête HTTP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | import util from 'util.js';
function _get( url, success, fail ) {
console.log( "------start---_get----" );
wx.request( {
url: url,
header: {
},
success: function ( res ) {
success( res );
},
fail: function ( res ) {
fail( res );
}
});
console.log( "----end-----_get----" );
}
function _post_from(url,data, success, fail ) {
console.log( "----_post--start-------" );
wx.request( {
url: url,
header: {
'content-type': 'application/x-www-form-urlencoded',
},
method:'POST',
data:{data: data},
success: function ( res ) {
success( res );
},
fail: function ( res ) {
fail( res );
}
});
console.log( "----end-----_get----" );
}
function _post_json(url,data, success, fail ) {
console.log( "----_post--start-------" );
wx.request( {
url: url,
header: {
'content-type': 'application/json',
},
method:'POST',
data:data,
success: function ( res ) {
success( res );
},
fail: function ( res ) {
fail( res );
}
});
console.log( "----end----_post-----" );
}
module.exports = {
_get: _get,
_post:_post,
_post_json:_post_json
}
|
Copier après la connexion
2. >2.1 obtenir la demande
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | let map = new Map();
map.set( 'receiveId', '0010000022464' );
let d = json_util.mapToJson( util.tokenAndKo( map ) );
console.log( d );
var url1 = api.getBaseUrl() + 'SearchTaskByReceiveId?data='+d;
network_util._get( url1,d,
function ( res ) {
console.log( res );
that.setData({
taskEntrys:res.data.taskEntrys
});
}, function ( res ) {
console.log( res );
});
|
Copier après la connexion
2.2 Demande POST
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | let map = new Map();
map.set( 'receiveId', '0010000022464' );
let d = json_util.mapToJson( util.tokenAndKo( map ) );
console.log( d );
var url1 = api.getBaseUrl() + 'SearchTaskByReceiveId';
network_util._post( url1,d,
function ( res ) {
console.log( res );
that.setData({
taskEntrys:res.data.taskEntrys
});
}, function ( res ) {
console.log( res );
});
|
Copier après la connexion
Image : 2.png
Effet![点击查看原图 Encapsulation des requêtes réseau de l'applet WeChat](/static/imghw/default1.png)
Photo : 3.png
![点击查看原图 Encapsulation des requêtes réseau de l'applet WeChat](/static/imghw/default1.png)
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!