I am trying to execute a Simple GET request with Scala Dispatch, however I am erroring out with a 404 error. Unexpected response status: 404

Here is a example that works:

https://www.google.com/finance/info?infotype=infoquoteall&q=tsla,goog

But am I amunsure of where my error is in my code

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) 
} 

Thanks!

有帮助吗?

解决方案

If you print the composed URL (using composeUri(List("tsla", "goog")).url, for example), you'll see that it's different from your working example—it doesn't include the www subdomain. Change the definition of google to use www.google.com and this'll work as expected.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top