我有一个API服务器和NodeJs服务器,当请求文件时,NodeJ将请求重定向到API服务器
API服务器将文件作为原始数据发送到NodeJs 和Nodejs将文件重定向到浏览器
但是当我使用wire shark检查网络数据时,在浏览器中收到的数据包不是来自API Server的原始数据(在文本文件的情况下工作,但在图像,视频,pdf,doc等中没有)
router.get('/GetCaseSupportDocument', function (req, res) {
var MyJsonData = {
DocId:parseInt(req.query.DocId) || 0
};
request({
url: 'http://somedomain/someurl', //URL to hit
method: 'POST',
json: MyJsonData
}, function (error, response, body) {
if (error) {
res.status(200).send('Failed');
} else {
res.status(200).send(body);
}
})
});
有人能说出为什么NodeJ与浏览器之间会发生变化吗? 对于这种类型的传输有没有更好的解决方案?
找到解决方案后更新。这工作
router.get('/GetCaseSupportDocument', function (req, res) {
var MyJsonData = {
DocId:parseInt(req.query.DocId) || 0
};
request({
url: Url.CaseService + 'GetCaseSupportDocument', //URL to hit
method: 'POST',
json: MyJsonData
}).pipe(res);
})
答案 0 :(得分:1)
您可以尝试使用简单的代理:
request
有关代理的更多详细信息,请参阅function onEdit(e) {
if(e.range.getA1Notation() == "D2") {
var sCounter = e.source.getRange("E2");
var counter = sCounter.getValue();
if(counter === 0) {
counter = 1;
} else {
counter ++;
}
sCounter.setValue(counter);
}
}
文档https://github.com/request/request