如何在Azure Functions node.js中获取客户端IP地址?

问题描述 投票:0回答:3

我有一个在 Node.js 上编写的 Azure 函数。我如何检索调用该函数的客户端的 IP 地址?

到目前为止我发现了什么:

  1. 同一问题的答案,但使用 C#。
  2. 可以从标题中读取它:

    module.exports = function (context, req) {
        var ip = req.headers['x-forwarded-for']    
    }
    

通过这种方式获取 IP 是否可靠,因为它可以在调用函数的过程中轻松更改?

node.js azure azure-functions
3个回答
2
投票

是的,它是可靠的,因为Azure Web服务器将覆盖x-forwarded-for,因为它知道它是从负载均衡器转发的。


0
投票

对于那些在 2025 年使用 Azure Function 模型 v4 和 NodeJS 18 阅读本文的人:

request.headers
当前返回一个带有 javascript Map 的对象,后者包含标头列表。要获取标头值,请使用 Map.get() 方法:
request.headers.get('x-forwarded-for')


-1
投票

如果您使用

express
,请考虑设置
app.set('trust proxy');

有关更多信息,请查看 express 手册页上的“Express behining proxy”

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.