我有以下设置:
val req = HttpRequest(HttpMethods.GET, Uri("http://www.example.com/blah"))
val response: Future[HttpResponse] = (IO(Http) ? req).mapTo[HttpResponse]
response.map(
resp => {
resp.headers.foreach(h => println(h))
}
)
以及以下配置:spray.can.host-connector.max-redirects = 2
。我知道这个URL重定向,但是当我检查响应头时,我没有看到Location头告诉我它重定向到哪里。
如果我将配置更改为spray.can.host-connector.max-redirects = 1
位置标题就在那里并且正确无误。但是,如果将来有人决定在同一个应用程序中需要更多错误,我希望不要破坏它。我是否会错过喷雾配置?
答案 0 :(得分:0)
显然我误解了Location标头。它带有重定向响应,因此当我设置max-redirect> 0,我有一个重定向我得到已经重定向的最新响应,它没有Location头。 Spray的HttpResponse没有与生成它的立即请求相关联,因此无法确定此响应所来自的URL是什么。我的解决方案是进行手动重定向。