我正在尝试使用Scala Dispatch执行一个简单的GET请求,但是我错了404错误。意外的响应状态:404
以下是一个有效的示例:
https://www.google.com/finance/info?infotype=infoquoteall&q=tsla,goog
但我是否知道我的错误在我的代码中
import dispatch._ , Defaults._
object Main extends App {
//concats a the proper uri together to send to google finance
def composeUri ( l:List[String]) = {
def google = host("google.com").secure
def googleFinance = google / "finance" / "info"
def googleFinanceGet = googleFinance.GET
val csv = l mkString ","
googleFinanceGet <<? Map("infotype"-> "infoquoteall", "q"->csv)
}
def sendRequest (uri:Req) = {
val res:Future[Either[Throwable,String]] = Http(uri OK as.String).either
res
}
val future = sendRequest(composeUri(List("tsla","goog")))
for (f <- future.left) yield println("There was an error" + f.getMessage)
}
谢谢!
答案 0 :(得分:3)
如果您打印撰写的网址(例如,使用composeUri(List("tsla", "goog")).url
),您会发现它与您的工作示例不同 - 它不包含www
子域。将google
的定义更改为使用www.google.com
,这将按预期工作。