我想将NAT Punchthrough作为客户端应用程序的一部分来实现,以允许客户端在路由器后面相互连接。我希望使用Azure移动服务来实现这一目标,但为了做到这一点,服务器需要保存数据库中所有传入连接的IP地址和端口(以便其他客户端可以查找主机,并连接回来发布数据的客户。)
无论如何在服务器端脚本中获取此连接(IP地址和端口)信息?如果没有,还有哪些替代服务可以让我设置这样的API?
谢谢!
答案 0 :(得分:1)
我发现在windows azure论坛上找到了另一个帖子的答案。
通过移动服务自定义API功能公开标头。此外,azure使用转发机器将传入的请求路由到适当的vm。此计算机是一个代理,它将传入的连接信息保存到x-forwarded-for http标头中。因此,从自定义脚本,我们可以从标头查询传入的连接信息。应该注意的是,x-forwarded-for头应该包括ip地址和端口号。
这是另一个帖子中给出的自定义api示例。
exports.get = function(request, response) {
var ip = request.headers['x-forwarded-for'];
response.send(statusCodes.OK, ip);
};
答案 1 :(得分:0)
这一分钟是不可用的。 Azure团队正在努力增加有关对脚本的请求的信息量。至于什么时候可以使用这个时间表,我不确定。