我有一个LuminusWeb项目正在运行,我想配置Friend授权的路线。这样做的问题在于,朋友有同像这样的环服务器进行配置:如何在LuminusWeb项目中配置Friend?
(def page (handler/site
(friend/authenticate
routes
...
;--- elsewhere ---
(compojure/defroutes routes
(GET "/" req
但是,在LuminusWeb's handler,路线都分布在不同的地方,它有它的自己的意见和模型,所以处理程序几乎没有所有路线。但是,所有分散的路由都是使用配置声明的。这是LuminusWeb:
(def app (app-handler
;; add your application routes here
[home-routes app-routes]
...
作为一个初学者,我的Clojure的理解是有限的,我不知道如何在这个地方配置Friend
。我试着查看Friend的文档,但除了readme和friend-demo apps之外没有其他东西,所有的演示应用程序都使用相同的配置。
我已经设置了一个非常简单的basic project on github,它只有luminusweb和整合Friend的裸骨。
我在不同的(合理的)地方盲目地插入了Friend的配置,直到我摆脱了所有编译时错误,但该项目仍然因为某种原因没有运行(导致运行时错误) 。
所以,问题是,当我的路线分散在不同的命名空间,我没有处理程序/网站的方法,我应该在哪里配置朋友?
谢谢。
非常好,谢谢,现在测试一下。 – Alexander
嗨sveri,朋友的配置上方是'user/friend-settings'吗?像'{:credentials-fn(partial creds/bcrypt-credential-fn users)}'会做什么?感谢您的代码,我设法摆脱了用户身份 - 无运行时错误,但现在它不让我登录,即使使用正确的密码。它只是将我重新定向到登录页面,并添加了& login_failed = Y&username = user' ... – Alexander
啊,实际上,我在配置中有一个错字。有趣的是,朋友没有抛出异常,我想它只是忽略未知的键..非常感谢你! – Alexander