compojure 解构生成整数...不是整数?

compojure destructuring making integers... not integers?

这个具有硬编码 ID 的 Compojure GET 路由...

   ;posts 
(GET "/post:id" [id :as request]
  ;(str "the post id is... " id)
   (def email (get-in request [:session :ze-auth-email]))
   (vb/post-page-draw email 17592186045616))

作品^

但是,使用符号 ID(在最后一行)...

   ;posts 
(GET "/post:id" [id :as request]
  ;(str "the post id is... " id)
   (def email (get-in request [:session :ze-auth-email]))
   (vb/post-page-draw email id)

其中 url 是:

localhost:4000/post17592186045616  ;;i.e. the number from above

(编辑:单词 post 和 id 之间没有冒号)

Returns huuuge 堆栈跟踪,主要是在

java.lang.Exception
processing rule: (q__7967 ?title ?content ?tags ?eid), 
message: processing clause: [?eid post/title ?title], 
message: Cannot resolve key: 17592186045616

所以,我已经能够将它隔离到复合解构中,只是不喜欢我传递的整数...我怎样才能得到我的 (vb/post-page-draw 电子邮件 ID) 使用通过 URL?

传递的参数

尝试:

(vb/post-page-draw email (Long. id))