Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.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 NodeJS下载文件产生异常:HPE\u无效\u常量_Javascript_Node.js_Express - Fatal编程技术网

Javascript NodeJS下载文件产生异常:HPE\u无效\u常量

Javascript NodeJS下载文件产生异常:HPE\u无效\u常量,javascript,node.js,express,Javascript,Node.js,Express,在我的NodeJS应用程序中,我正在调用第三方RESTful服务来下载文件。我用电话来实际打电话。我的代码如下所示: function downloadDocument (req, res) { var r = request({ url: 'url/to/document', headers: { 'AUTHTICKET': 'some-auth-ticket' } }).on('error', funct

在我的
NodeJS应用程序中
,我正在调用第三方
RESTful
服务来下载文件。我用电话来实际打电话。我的代码如下所示:

function downloadDocument (req, res) {
    var r = request({
        url: 'url/to/document',
        headers: {
            'AUTHTICKET': 'some-auth-ticket'
        }
    }).on('error', function (err) {
        req.log.error('File download failed', err);
    }).pipe(res);
}
变量
res
req
来自。基本上,我的节点应用程序只是转发原始请求(直接来自浏览器)并添加身份验证票证。在过去的应用中,这对我来说很好,但现在我得到了以下例外:

[Error: Parse Error] bytesParsed: 5816, code: 'HPE_INVALID_CONSTANT'
目标服务器返回的内容长度错误似乎有问题,但我找不到任何解决此问题的方法。以前有没有人遇到过这个异常,可以给我一个指向正确方向的指针?谢谢大家!

更新
直接从浏览器调用
第三方API
。一旦我从
NodeJS
切换到调用它,它就会再次失败。

您是否检查了没有请求模块的响应?i、 e只是用node的原生http模块点击RESTful api来检查响应?@shennan我已经尝试了原生
http
模块以及其他库。似乎它们中的许多依赖于本机的
http
模块,只是为了方便调用。我在所有这些服务器上都遇到了相同的错误。根据Node,来自第三方服务器的HTTP响应无效(请尝试使用CLI工具调用它,如
curl
)。所以最终,服务器必须被修复。@robertklep谢谢你的输入,你能看看我更新的问题吗?如果So社区不能点击api,这将很难解决。我的建议是阅读并尝试确定抛出错误的位置。Node在解析HTTP响应方面似乎比浏览器更严格,因为它是服务器端的。