创建通过客户端计算机路由的代理

时间:2013-07-30 21:28:18

标签: javascript jquery node.js proxy

我正在制作一项服务,它基本上只是另一个服务API的UI,只允许在一段时间内为每台机器发出特定数量的请求。

因为我会为很多人提出api请求,所以我很快会达到这些限制,所以为了解决这个问题,我想使用JQuery在客户端进行api调用,但是因为javascripts {{3}这证明是非常困难的。

所以我想知道,是否有可能创建一个服务器端代理,通过客户端IP地址路由api请求?如果是这样,我怎么能实现这个呢?我查看了same-origin policy的代理表之类的内容,但我仍然不确定它是否适用于客户端IP地址。

2 个答案:

答案 0 :(得分:1)

不幸的是,在通过这样的服务器代理进行路由时,您无法“使用客户端IP”作为源。

但是,如果服务接受X-Forwarded-For HTTP Header,您可能会很幸运。您可以在向服务发送请求时在代理中设置该标头。标头的值应该是客户端IP。

了解有关X-Forwarded的更多信息 - 请点击此处:http://en.wikipedia.org/wiki/X-Forwarded-For

答案 1 :(得分:1)

正如@HallvarHelleseth所说,你不能做你想要的。但是,如果相关服务支持JSONPCORS,您应该可以直接从客户端执行您想要的操作。

jQuery支持CORS和JSONP,如果您正在使用它。限制是IE< 10支持CORS的模型与其他浏览器不同。对于那些实现广泛可用的API服务的人,我建议支持两者。