nodejs request module里的json参数的一个坑

栏目: Node.js · 发布时间: 5年前

内容简介:今天工作的时候遇到一个坑,在客户端用nodejs给服务器发送HTTP请求,服务器老是报错:In the context of Data Services an unknown internal server error occurred经过服务器端调试发现,服务器根本就没有正确解析出这个请求的content-type。在postman里能工作的场景下,正确解析出的content-type是multipart/mixed:

今天工作的时候遇到一个坑,在客户端用nodejs给服务器发送HTTP请求,服务器老是报错:In the context of Data Services an unknown internal server error occurred

nodejs request module里的json参数的一个坑

经过服务器端调试发现,服务器根本就没有正确解析出这个请求的content-type。在postman里能工作的场景下,正确解析出的content-type是multipart/mixed:

nodejs request module里的json参数的一个坑

而我的nodejs代码里明明指定了这个content-type的啊?

nodejs request module里的json参数的一个坑

经过一行行代码分析,最后发现问题出在第63行的json字段的值。我错误的赋成了true。

nodejs request module里的json参数的一个坑

这个参数起什么作用?调试一下就知道了。如果为true,进入第403行。

nodejs request module里的json参数的一个坑

nodejs request module里的json参数的一个坑

nodejs request module里的json参数的一个坑

如果请求内部有entity的content-type不是application/x-www-form-urlencoded, 则进入第1293行。

nodejs request module里的json参数的一个坑

safeStringify的实现逻辑就是浏览器原生的JSON.stringify, 把应用程序传入的json对象序列化成字符串。但是我的代码里,传入request module的请求体是一个字符串,而json参数设的又是true,所以逻辑上就不对了。把这个json参数的值改为false后,一切正常。

nodejs request module里的json参数的一个坑

nodejs request module里的json参数的一个坑

nodejs request module里的json参数的一个坑

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

nodejs request module里的json参数的一个坑


以上所述就是小编给大家介绍的《nodejs request module里的json参数的一个坑》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

思想的未来

思想的未来

(美)劳伦斯﹒莱斯格 / 李旭 / 中信出版社 / 2004-10 / 29.00元

因特网革命已到来,一些人说它已经过去,革命缘何而来?又缘何而去呢? 劳伦斯·莱斯格对因特网革命中为何会出现一种反革命的破坏性力量及后果做出了解释。创作之所以繁荣,是因为因特网保护了创新的公共资源。是因为因特网保护了创新的公共资源。因特网的独特设计营造出一个中立的平台。最广大范围的作者们可在此平台上进行试验。围绕此平台的法律架构对这一自由空间给予了保护,以使文化和信息——我们这个时代的......一起来看看 《思想的未来》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具