Node.js 如何从节点检索Axios调用中的远程IP地址

Node.js 如何从节点检索Axios调用中的远程IP地址,node.js,reactjs,axios,Node.js,Reactjs,Axios,当我在节点中调用axios时,我想获得远程url的解析IP地址。见下面的***评论。提前多谢 axios.get('http://www.example.com') .然后(功能(响应){ //***如何在此处获取www.example.com的解析IP地址 }) .catch(函数(错误){ console.log(错误); });Axios将返回响应头和请求正文,通常如果没有指定ip地址,您无法从头中获取ip地址,但您可以使用node.js`中的模块 const dns = require

当我在节点中调用axios时,我想获得远程url的解析IP地址。见下面的***评论。提前多谢

axios.get('http://www.example.com')
.然后(功能(响应){
//***如何在此处获取www.example.com的解析IP地址
})
.catch(函数(错误){
console.log(错误);

});Axios将返回响应头和请求正文,通常如果没有指定ip地址,您无法从头中获取ip地址,但您可以使用node.js`中的模块

const dns = require('dns');

dns.resolve4('archive.org', (err, addresses) => {
  if (err) throw err;
  console.log(`addresses: ${JSON.stringify(addresses)}`);
});

Axios文档声明
request.response
“是node.js(在重定向中)中的最后一个ClientRequest实例。”

axios.get('http://www.example.com')
.然后(功能(响应){
log(response.request.socket.remoteAddress);
});

您是否有权访问远程服务器(如“您管理它吗”)?只有当您有权访问远程url服务器时,才能执行此操作。您只能访问HTTP头,除非远程服务器专门提供其ip地址作为头的一部分,否则您将无法访问它。DNS调用不会浪费一些时间来解析ip。我希望IP已经在axios呼叫中解决,我可以从那里抓到它。。如果可能的话,我希望避免额外的dns调用。实际上,您可以并行运行这两个调用,这样您就不会浪费任何时间了…是的,那么您必须同步这两个调用,因为我需要同时记录响应和IP地址。您的解决方案可以工作,但可能会使代码复杂一点。在我这么做之前,我希望有人能确认axios是否将它埋在了我可以使用的响应中的某个地方。