2016-03-10 127 views
0

我想获取页面的内容为JSON。然而Scala获取页面内容为JSon

val content = new Scanner(url.openStream).useDelimiter("\\Z").next() 
val rawJson = JParser.parseFromString(content).get 

,我有一些问题,因为该方法useDelimiter("\\Z")废墟文本的格式:

现在,我这样做。但除此之外,我不知道如何获取扫描仪的全部内容。

从URL获取JSON内容是否更好?

回答

1

有很多库可以做到这一点,对于简单的任务我一直使用很多scalaj-http成功。

一个简单的用法是:

val rawJson = Http("http://localhost:8080/hello").asString.body 

的文件有很多,你可以看看其他的例子。

1

scala.io.Source提供了内置的支持,得到一个HTTP响应的主体,没有额外的库:

import scala.io.Source.fromURL 
val json = fromURL("http://localhost:8080/hello").mkString 
0
Source.fromURL(url).mkString 

工作正常,如果你不需要惹的编码。当然,你可能想把它包装在未来...