盯着Spray Library,我尝试向 Facebook Graph API 发出请求:
val responseF: Future[HttpResponse] = pipeline(Get("http://graph.facebook.com/v2.1/facebook/picture?redirect=false"))
def receive = {
case _ =>
val originalSender = sender()
responseF onComplete{
case Success(response) =>
log.info(response.toString)
originalSender ! response.toString
log.info( """|Response for GET request
|status : {}
|headers: {}
|body : {}""".stripMargin,
response.status.value, response.headers.mkString("\n ", "\n ", ""), response.entity.asString)
case Failure(error) =>
log.error(error, "Could not get Facebook stuff")
originalSender ! "not working"
}
}
主要问题是响应的内容类型
Content-Type: text/javascript; charset=UTF-8
不是预期的application/json
我的请求到底有什么问题?
由于Spray
严重依赖于内容类型进行解析等。