wx post php,小程序:post请求

f0b05f9a4565fa0e01b92234236803a2.png

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

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

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

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,

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,

}

8ba43b5525dcd111eb29a1d1a8049c5c.png

评论部分:

又试了几个接口,部分可以提交数据.应该是个bug.只能等官方正式版本了.

我刚才用其他的post请求也不行.但是这个确实拿到数据了.你试试看,接口地址:http://op.juhe.cn/onebox/weather/query 两个参数,cityname,key.cityname随便写城市名字,key是我申请的,key=1430ec127e097e1113259c5e1be1ba70 我明天再研究下.看看是为什么其他的不行.

更多小程序:post请求相关文章请关注PHP中文网!

相关标签:小程序

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值