接受Grails中某些网址的来电

时间:2011-11-01 12:32:01

标签: url grails

我遇到一种情况,要求我在从某个网址发送特定请求时调用某个控制器。

假设我的应用程序正在运行:http://www.app.com/listencontroller

当请求发送到此URL并且请求从http://www.itsme.com发送时,我希望能够处理该请求,否则我不想对其执行任何操作。

如何以一种漂亮的方式完成,即我的控制器中没有硬编码的URL?

2 个答案:

答案 0 :(得分:1)

您的意思是浏览器必须来自域名itsme.com,或者请求必须通过位于itsme.com的页面上的链接来发送?

第一个要求你在 request.remoteAddr 上进行反向dns查找。

后者需要查看传入请求的 Referer 标头。这不是防弹的,因为它很容易被欺骗。此外,在某些情况下,它根本不会发送,因此您的里程可能会有所不同。

在任何一种情况下,Grails过滤器或控制器拦截器都可能是最优雅的解决方案。

答案 1 :(得分:0)