2
当定义组合处理程序例如通过使用defroutes
宏,我可以做这样的事情:如何获得组合处理程序中的自链接?
(defroutes home-routes
(GET "/myhome/:id" [ id ] (home-page)))
(defn home-page [ id ]
(... do something ...))
所以我知道如何通过一块path参数。但想象一下,我想用自链接返回一个HAL + JSON对象。我如何获得defroutes将整个URI传递给home-page
函数?
我记得和反向代理请求麻烦,即你有你的戒指服务器localhost':1234',但公共交通到达'domain.net:80' 。在这种情况下,至少':server-port'应该是1234。 (另外,如果协议不同,它不会变得更容易; IIRC你必须看看['X-Forwarded-For'](http://en.wikipedia.org/wiki/X-Forwarded-For)在那些情况下。) – xsc 2014-08-29 19:41:44
我正在使用Jetty,它提供了对“X-Forwarded-For”的支持(如果配置为这样做)。因此,Ring请求映射包含“公共”方案,服务器名称和服务器端口。因此,即使使用反向代理,答案中的代码也可以正常工作。 – ez121sl 2014-08-29 20:03:53