Node.js Net.Socket()连接到net.tcp Web服务

时间:2016-06-21 16:45:33

标签: node.js

所以我在TCP上的端口7001上运行了一个Web服务:

  

的net.tcp://www.myurl.com:7001 /我/ web服务

我希望使用net.Socket:

连接到它
client.connect(7001, 'myurl.mine.com/my/webservice', function () {
    console.log('Connected');
    client.write(msg);
});

当我执行上述操作时,它会例外:

Error: getaddrinfo ENOTFOUND <<my url>>
     at GetAddrInfoReqWrap.onLookup [as oncomplete]

当我尝试使用/ my / webservice连接到它时,它连接正常并且在client.connect()阶段没有给出错误,但显然无法找到该端点,因此当我尝试执行此操作时它会出现另一个错误client.write()

任何人都知道如何使用net.Socket对一个网址服务的网址不仅仅是myurl.com:7001但实际上包含了一条路线,如myurl.com:7001/my/webservice?

1 个答案:

答案 0 :(得分:1)

根据node.js docs,您使用的方法版本只需要主机名作为第二个参数。您正在提供主机名+路径

在您的情况下,我建议使用net.connect的a more generalized version,它接受​​带参数的对象。所以你的代码看起来像这样:

client.connect({
        host: 'myurl.mine.com',
        port: 7001,
        path: '/my/webservice'
    },
    function () {
        console.log('Connected');
        client.write(msg);
    }
);