【发布时间】:2015-08-28 07:39:37
【问题描述】:
我是clojure的新手。我正在尝试通过 clojure 获取流式推文。我正在使用 twitter-api 库来获取流式推文,代码 sn-p 如下。
(ns hello-twitter
(:use
[twitter.oauth]
[twitter.callbacks]
[twitter.callbacks.handlers]
[twitter.api.streaming])
(:require
[clojure.data.json :as json]
[http.async.client :as ac])
(:import
(twitter.callbacks.protocols AsyncStreamingCallback)))
(def my-creds (make-oauth-creds "app consumer key"
"app consumer secret"
"user-access-token"
"user-access-token-secret"))
(def ^:dynamic
*custom-streaming-callback*
(AsyncStreamingCallback. (comp println #(:text %) json/read-json #(str %2))
(comp println response-return-everything)
exception-print))
(statuses-filter :params {:track "Cricket"}
:oauth-creds my-creds
:callbacks *custom-streaming-callback*)
返回的 json 中的 :body 部分应该会不断更新。我得到 :body 的价值就像 <core$promise$reify__6363@32cdfb83: :pending> 一样,我无法弄清楚如何获取推文。
如何建立不间断连接以获取流式推文作为输出?
【问题讨论】: