繁体   English   中英

Node.js-错误:套接字挂断

[英]Node.js - Error: socket hang up

我尝试从具有代理域的json.placeholder API获取数据。 我已使用auth标头通过此代理进行了身份验证。 该身份验证标头需要发送给每个请求。 但是我得到一个错误:

error: { Error: socket hang up
at createHangUpError (_http_client.js:331:15)
...
at process._tickCallback (internal/process/next_tick.js:180:9) code: 'ECONNRESET' }

我的代码如下:

app.get('/users/1', (req, res) => {
    const options = {
        host: 'velodrome.usefixie.com',
        port: 80,
        path: 'http://jsonplaceholder.typicode.com' + req.path,
        headers: {
            'Content-Type': 'application/json',
             Host: 'jsonplaceholder.typicode.com',
            'Proxy-Authorization': `Basic ${new Buffer(auth).toString('base64')}`,
        }
    };

    const x = http.get(options, (request) => {
        request.on('data', (locations) => {
            buffer = new Buffer(locations);
        });
        request.pipe(res);
    }).on('error', (err) => console.log('error:', err));
    x.end();
});

您的options.host应该是要调用的远程主机,例如http://jsonplaceholder.typicode.comoptions.path应该是要使用的查询字符串(URL参数)。

目前,您正在致电velodrome.usefixie.comhttp://jsonplaceholder.typicode.com{your req.path}:80

看看这些:

Node.js文档,http.get

和这个

如何发出http请求

并从npm检出请求axios ,它们是为使Node中的HTTP请求更容易而制作的库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM