Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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 Node.js+;express如何将字符串添加到请求正文?_Javascript_Node.js_Express_Proxy - Fatal编程技术网

Javascript Node.js+;express如何将字符串添加到请求正文?

Javascript Node.js+;express如何将字符串添加到请求正文?,javascript,node.js,express,proxy,Javascript,Node.js,Express,Proxy,我有一个工作正常的反向代理: app.post('/geoserver', function (req, res) { apiProxy.web(req, res, {target: serverOne}); }); 请求已包含以下主体: 我需要向请求主体添加一个类似于以下内容的字符串: '<Filter> .... </Filter>' “…” 在代理到serverOne之前 尝试使用req.body=req.body.replace(“”,…')但bo

我有一个工作正常的反向代理:

app.post('/geoserver', function (req, res) {
    apiProxy.web(req, res, {target: serverOne});
});
请求已包含以下主体:

我需要向请求主体添加一个类似于以下内容的字符串:

'<Filter> .... </Filter>'
“…”
在代理到
serverOne
之前

尝试使用
req.body=req.body.replace(“”,…')
但body似乎未定义


有没有办法解决这个问题?非常感谢

首先,如果请求失败或解析不正确,则主体可能未定义

尝试
app.use(express.bodyParser())
。最好在整个应用程序中使用它

有时,当express出现故障时,您可能希望使用


如果您正在使用它,可能会有一些地方进行反向工程,并检查最简单的请求是否达到,因为您提供的屏幕截图来自开发工具,对吗?这意味着它可能只会被发送,但不会被接收/错误地解释

看,任何东西都可以通过字符串转换成字符串。但是在本例中,您可以使用JSON.stringify(JSON.parse(*)),*可以是您想要更改格式的任何格式,这里JSON.parse()将格式化您的文本,JSON.stringify()将帮助您生成有效的JSON格式。

因为我没有找到解决方案,最后创建了一个.Net处理程序,它可以轻松地修改正文内容


接受作为结束问题的解决方案。

req.body未定义:/噢,等等,您的req.body未定义?是的!不明白为什么,这是问题的一个非常重要的部分,你最好将其更新为
body is undefined
,而不是
它不工作
。我会更新答案的。不用担心,一切都好。只需确保包含所有可能的信息:)