Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 环中间件中会话数据的访问_Clojure_Ring_Compojure - Fatal编程技术网

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)))