我对 IP 地址和 header 非常困惑。如果我的问题看起来很简单,我很抱歉。
我已经浏览了此处列出的答案: How to get the user IP address in Meteor server?
但我不知道如何让它们发挥作用。例如,我正在尝试使用这个:
Meteor.onConnection(function(conn) {
console.log(conn.clientAddress);
});
但我找不到放置它的位置。
如果我把它放在客户端,它会说 Meteor.onConnection 未定义。如果我把它放在服务器上什么也不会发生。我不认为你在meteor.startup 上运行它。
有人可以帮助我解释在哪里使用此代码吗?具体来说,如果有人构建了自定义跟踪系统,那就太好了。您是否将 ips 存储到数据库中?或者如何记录以进行跟踪?
任何提示都会有所帮助!谢谢
最佳答案
- 将代码放置在服务器上的任意位置。例如在
server/main.js
中。无需从Meteor.startup
中调用它。 - 启动应用。
- 打开浏览器并访问适当的地址(例如 http://localhost:3000) - 这将导致网络客户端连接并运行 (1) 中的代码。
- 查看您的 shell 输出(用于启动应用的 shell - 而不是浏览器控制台),您应该会看到打印的本地 IP 地址 (127.0.0.1)。
这也应该适用于生产环境,但是如果您的应用程序在代理(例如 nginx)后面提供服务,您将需要添加适当的命令以将用户的 IP 传递到您的应用程序。对于nginx,请参阅this post .
关于javascript - Meteor:如何获取自定义跟踪系统的 IP 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32620352/