0

有没有办法让 express.js 服务器始终使用 dns 查找 IPV4 地址而不是 IPv4 和 IPV6 地址?

就像我们在 java JVM 中通过设置参数 java.net.preferIPv4Stack=true 一样

当我的添加正在进行出站服务调用时,我希望对传出请求执行此操作。我的应用程序使用request npm 包,它使用net npm 包,它使用dns npm 包。dns 包有一个选项来设置 IP 系列,可以是 4 或 6。我认为如果我将它设置为 4,这将满足我的要求。

现在的问题是,如何从我的应用程序中传递这个选项,以便在运行时应用到这个 npm 包。

4

1 回答 1

0

我必须这样做以强制 DNS 查找只查找 IPv4 地址而不是 IPv6 地址。

import Request from 'request';

export class SoapUtility extends Utility 
{

  constructor(options) {
        super();
        otherCode = otherCode;

        this.request = Request;
  };

  requestMainframe(args, callback) 
  {
    this.request.post({
        url: this.endpoints.userLookup,
        method: 'POST',
        family : 4,
        headers: {
            'Content-Type': 'text/xml',
            "Authorization": `Basic ${creds}`
        },
        body: requestBody,
        rejectUnauthorized: false, 
    }, (error, response, body) => {
          callback(error, null);
    });
  }
}

这是来自 npm 请求DNS 查找详细信息的文档

于 2017-09-07T20:09:52.733 回答