Clojure 环中间件中会话数据的访问
我尝试在环形中间件中访问基本会话数据,以将用户数据复制到请求中,以便于访问Clojure 环中间件中会话数据的访问,clojure,ring,compojure,Clojure,Ring,Compojure,我尝试在环形中间件中访问基本会话数据,以将用户数据复制到请求中,以便于访问 (def app (-> (handler/site app-routes) (wrap-user-auth) ; <--- my middleware (session/wrap-session {:store (cookie-store {:key "something super secret"})}))) 打印请求时,会话数据始终为空,即使它已设置并且可以通过视图访问。我
(def app
(->
(handler/site app-routes)
(wrap-user-auth) ; <--- my middleware
(session/wrap-session {:store (cookie-store {:key "something super secret"})})))
打印请求时,会话数据始终为空,即使它已设置并且可以通过视图访问。我试图搞乱中间件的顺序,但不明白原子为什么是空的
会话数据可用的一些随机路由
(ANY "/foo" request (println (request :session)))
找到了解决办法
事实证明,这个问题“在某种程度上”与相关,这说明使用了两个会话中间件:一个是compojure,一个是wrap session
。将两个中间件更改为同一个存储引擎后,atom中充满了我的会话数据——尽管我不太明白为什么
我把它作为一个答案而不是评论,因为它解决了实际问题。很高兴听到为什么会这样
(ANY "/foo" request (println (request :session)))