微信小程序 POST请求(网络请求)详解及实例代码

网友投稿 422 2023-06-29


微信小程序 POST请求(网络请求)详解及实例代码

微信小程序 POST请求

微信小程序开发中网络请求必不可少.GET.POST请求是最常用的.GET请求,POST请求的时候有好几个坑.我已经为大家填好了.

按照文HPigalo档,肯定是这么写.那就入坑了.

1. 'Content-Type': 'application/json'用在get请求中没问题.

POST请求就不好使了.需要改成: "Content-Type": "application/x-www-form-urlencoded"

2016.11.10更新:有同学在将content-type 修改为小写后,post请求成功.

2. 加上method: "POST"

3.data: { cityname: "上海", key: "1430ec127e097e1113259c5e1be1ba70" }写成json格式这样也是请求不到数据的.需要转格式.

下面直接贴代码:

3.1

//index.js

//获取应用实例

var app = getApp()

Page( {

data: {

toastHidden: true,

city_name: '',

},

onLoad: function() {

that = this;

wx.request( {

url: "http://op.juhe.cn/onebox/weather/query",

header: {

"Content-Type": "application/x-www-form-urlencoded"

},

method: "POST",

//data: { cityname: "上海", key: "1430ec127e097e1113259c5e1be1ba70" },

data: Util.json2Form( { cityname: "上海", key: "1430ec127e097e1113259c5e1be1ba70" }),

complete: function( res ) {

that.setData( {

toastHidden: false,

toastText: res.data.reason,

http://city_name: res.data.result.data.realtime.city_name,

date: res.data.result.data.realtime.date,

info: res.data.result.data.realtime.weather.info,

});

if( res == null || res.data == null ) {

console.error( '网络请求失败' );

return;

}

}

})

},

onToastChanged: function() {

that.setData( { toastHidden: true });

}

})

var that;

var Util = require( '../../utils/util.js' );

3.2

{{toastText}}

{{city_name}}

{{date}}

{{info}}

3.3

//util.js

function json2Form(json) {

var str = [];

for(var p in json){

str.push(encodeURIComponent(p) + "=" + encodeURIComponent(json[p]));

}

return str.join("&");

}

module.exports = {

json2Form:json2Form,

}

希望对大家有帮助.


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序教程之本地图片上传(leancloud)实例详解
下一篇:微信小程序 保留小数(toFixed)详细介绍
相关文章

 发表评论

暂时没有评论,来抢沙发吧~