从字符串 "http://www.youtube.com/watch?v=P76Vbsk_3J0"
开始,我想获取 {:v P76Vbsk_3J0}
。
我即将到达:
(#'ring.middleware.params/parse-params "http://www.youtube.com/watch?v=P76Vbsk_3J0" "UTF-8")
=> {"http://www.youtube.com/watch?v" "P76Vbsk_3J0"}
(clojure.walk/keywordize-keys {"http://www.youtube.com/watch?v" "P76Vbsk_3J0"})
=> {:http://www.youtube.com/watch?v "P76Vbsk_3J0"}
我可以从ring
中获取一些东西来完成剩下的旅程吗?
最佳答案
ring.middleware.params/parse-params
期望仅接收查询参数字符串,因此您需要删除 ?
之前的所有内容(包括 ?
),类似这样的内容工作:
(#'ring.middleware.params/parse-params
(second (.split "http://www.youtube.com/watch?v=P76Vbsk_3J0" "\\?"))
"UTF-8")
;=> {"v" "P76Vbsk_3J0"}
请注意,您使用的函数不属于公共(public) API。
关于clojure - 从环中获取URL参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23052565/