Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript nodsj在请求时替换编码-解码方法。post?_Javascript_Node.js_Ajax_Request - Fatal编程技术网

Javascript nodsj在请求时替换编码-解码方法。post?

Javascript nodsj在请求时替换编码-解码方法。post?,javascript,node.js,ajax,request,Javascript,Node.js,Ajax,Request,我正在尝试使用nodejs请求模型向网站发送post数据 im使用基本request.post方法将数据作为表单数据传递 问题是我发送的字符串是用“%20”而不是“+”编码的 对于空间字符。如何更改它?%20仅用于空格。我从W3S中找到了这一点,因为URL通常包含ASCII集之外的字符,因此必须将URL转换为有效的ASCII格式。URL编码将不安全的ASCII字符替换为“%”,后跟两个十六进制数字。URL不能包含空格。URL编码通常将空格替换为加号(+)或%20。我只需要知道如何控制编码,而且我

我正在尝试使用nodejs请求模型向网站发送post数据

im使用基本request.post方法将数据作为表单数据传递

问题是我发送的字符串是用“%20”而不是“+”编码的
对于空间字符。如何更改它?

%20
仅用于空格。我从W3S中找到了这一点,因为URL通常包含ASCII集之外的字符,因此必须将URL转换为有效的ASCII格式。URL编码将不安全的ASCII字符替换为“%”,后跟两个十六进制数字。URL不能包含空格。URL编码通常将空格替换为加号(+)或%20。我只需要知道如何控制编码,而且我似乎无法在请求模块的文档本身上找到方法。您可以使用
decodeURI
再次解码字符串。看到这一点,我并没有真正解决它。您可以说,我通过手动提供内容长度头成功绕过了它。接受服务器现在可以处理请求,即使是%20,而不仅仅是+。如果我了解如何更改请求模型表单编码文本的方式,我将进行更新。