如何在 node.js 的 fetch 请求中设置 localAddress?

How to set localAddress in fetch request in node.js?

在我的服务器上,我有多个 IP 地址。 我需要从我的 node.js 服务器对外部服务进行 API 调用,但我每次都需要从特定的 IP 地址进行调用(IP 取决于很多因素)。

似乎 HTTP 节点模块支持 localAddress 属性 指定从哪个 ip 地址发送请求,但我导入的某些库使用 fetch 方法。

我如何告诉 fetch 方法从特定的 ip 地址发出 http 请求?

如果 Node.js 中的 fetch 你的意思是 node-fetch npm 模块,那么,根据它解释它自己的 options 对象并构建一个完全不同的事实来判断一个用于它包装的 http.get 请求(所有这些都是为了它可以更充分地匹配 WHATWG Fetch 规范),不幸的是这是不可能的。此外,此功能 would/could 永远不会成为任何浏览器的一部分 API.

但是,您可以将 options 对象中的 localAdressgot npm 模块一起使用,它是围绕 http.request.[=20 的更加透明的 Promise 包装器=]

有关语法的更多详细信息:
https://www.npmjs.com/package/got https://nodejs.org/api/http.html#http_http_request_options_callback