我正在使用 dispatch 0.11.0, Scala 2.10 并试图让这个代码工作
val svc = url("https://my-server/img/cat.jpg").as(username, password)
val respBody = Http(svc OK as.Response(_.getResponseBodyAsStream))
respBody onComplete {
case Success(stream) => {
val fos = new java.io.FileOutputStream("myfile.jpg")
Iterator
.continually (stream.read)
.takeWhile (-1 !=)
.foreach (fos.write)
fos.close()
}
case Failure(exception) => {
Logger.log.error(exception.toString)
}
}
当服务器返回 302 时,dispatch 没有正确处理身份验证并执行失败。奇怪的是,如果我将 url 指向返回 401 的 JSON 端点,则身份验证工作正常。我不知道为什么服务器设置为返回 2 个不同的状态以进行未经授权的访问,但我需要弄清楚如何处理这个问题。任何见解将不胜感激。
谢谢,鲍勃