例如,我需要解析来自imdb.com帐户的数据。因此,任务是获取当前记录的页面。我采取了" id"来自浏览器的cookie。并提出GET请求,但它不起作用。
(ns imdb.core
(:require [clj-http.client :as client])
(def ^:dynamic *base-url* "http://www.imdb.com/")
(def id {"id" {:value "my_value"
:domain "imdb.com"
:secure true
:max-age 3600}})
(defn get-my-page []
(client/get *base-url* {:cookies id}))
我想我需要将我的id cookie设置为clj-http.cookies / cookie-store。但是如何?
答案 0 :(得分:0)
clj-http
提供您需要使用的clj-http.cookies
命名空间。
You can setup your cookie store,然后使用从浏览器中提取的Cookie调用clj-http.cookies/add-cookie
,最后使用clj-http.client/get
设置:cookie-store
。
另一方面,您可能只是在文档中描述的多个HTTP调用中维护cookie,只需直接从clj-http
调用登录页面即可。它将使您的逻辑可重复,无需手动步骤,如从浏览器复制cookie。