微信小程序wx.request使用post方式传参入坑

时间:2024-03-18 19:27:48

急急忙忙尝试了2天,发现问题始终解决不掉

微信小程序wx.request使用post方式传参入坑

 

微信小程序wx.request使用post方式传参入坑

问题:通过微信小程序实现post   

(后端是python flask 

flask的post函数)

 

解决方案:凭我的经验猜测 只传输一个值  data ,然后里面包含字典形式的三个元素  

{"kind":"",

"acc":"",

"donor":""}

 

为了转换在小程序上post我费了些时间

微信小程序wx.request使用post方式传参入坑微信小程序wx.request使用post方式传参入坑

微信小程序wx.request使用post方式传参入坑

 

 

我感觉上述没有问题,但是不知道为什么就是通不过一直 500

下面是微信小程序的客户端post的

 

微信小程序wx.request使用post方式传参入坑

 

 

结果:

我猜测还是我post的数据格式不对,

相应200的  正确格式

微信小程序wx.request使用post方式传参入坑

 

最终解决方案:

采用

在前后端交互的过程中难免会出现需要我们将字符串转成json的时候。

 json.stringify()方法是将一个JavaScript值(对象或者数组)转换为一个 JSON字符串

json.parse() 方法将数据转换为 JavaScript 对象( 将字符串转成json对象。 )
 

强烈安利JavaScript 教程

http://www.w3school.com.cn/json/json_eval.asp

 

后记:

再传post值的过程中

应先抓包分析一下对应的 post为和值,或者直接利用开发者工具箱直接network 拉到最后直接分析

微信小程序wx.request使用post方式传参入坑

微信小程序wx.request使用post方式传参入坑

通过content-type 得到传参方式 最下方仅为post的数据,我没农商

一般来说传参方式分为

    application/json   multipart/form-data      application/x-www-form-urlencoded   

为什么会有这么多传参方式,就是因为他的编码方式,协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式。  数据发送出去,还要服务端解析成功才有意义。一般服务端语言如 php、python 等,以及它们的 framework,都内置了自动解析常见数据格式的功能。
服务端通常是根据请求头(headers)中的 Content-Type 字段来获知请求中的消息主体是用何种方式编码,再对主体进行解析。

所以说到 POST 提交数据方案,包含了 Content-Type 和消息主体编码方式两部分。

 

我觉得这篇可以配合我上几篇来写作就非常好了,

其实我觉得 不管后端是啥样的,只要配合最后传参的形式,在前端js修改为合适的就可以正藏运行了