1
我們正在嘗試閱讀Groovy中的流式JSON數據(使用JsonSlurper),但我們只能通過反覆解析源URL來設法實現。我們想要做的是將它作爲推送機制,以便任何時候有新的內容我們都會得到回覆。那可能嗎? (如果你有Java的解決方案,那也沒關係)閱讀Groovy中的流式JSON
package json
import groovy.json.JsonParserType
import groovy.json.JsonSlurper
class JsonParser {
private static final String JSON_URL = "https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20csv%20where%20url%3D'http%3A%2F%2Fdownload.finance.yahoo.com%2Fd%2Fquotes.csv%3Fs%3DHM-B.ST%26f%3Dsl1d1t1c1ohgv%26e%3D.csv'%20and%20columns%3D'symbol%2Cprice%2Cdate%2Ctime%2Cchange%2Ccol1%2Chigh%2Clow%2Ccol2'&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys"
static main(args) {
def url = new URL(JSON_URL)
def urlStream = null
try {
urlStream = url.openStream()
def jsonSlurper = new JsonSlurper().setType(JsonParserType.INDEX_OVERLAY)
def jsonObj = jsonSlurper.parse(url)
10.times {
println jsonObj.query.created.toString()
//println jsonObj.toString()
jsonObj = jsonSlurper.parse(url)
sleep(1000)
}
} finally {
if (urlStream != null) urlStream.close()
}
}
}