【发布时间】:2012-08-31 08:18:29
【问题描述】:
我可能没有正确构建查询。所以让我解释一下我面临的问题。
环境 :
我有一个响应 http API 调用的服务器。进行此调用的客户端是另一台服务器上的 html 文件。所以这是一个跨域调用。该功能按预期工作。
问题 :
在我的 webapp(tomcat servlet)上,我希望能够获取客户端的域名,进行此调用
示例 :
如果http://abc.com/crossDomainCall.html 正在对我的服务器进行跨域调用,我希望能够看到它是 abc.com
我的尝试 :
我试过 request.getRemoteAddr() 和 request.getRemoveHost()
但是他们正在返回当时为 HTML 提供服务的服务器地址。 不是托管 html (abc.com) 的服务器地址
对此的任何指示,将不胜感激。
干杯,
罗希特斯
编辑 1 :
正如@gigadot 回答的那样,使用HTTP Header 中的'referer' 对我有用。但这并不是万无一失的。所以,我的问题是,像谷歌地图这样的服务是如何做到这一点的?我知道,他们需要将 API 密钥与已注册该密钥的相应域进行比较。那么,他们如何验证这样的事情呢?
【问题讨论】:
标签: java cross-domain