2017-06-22 72 views
0

我在尝试请求使用Alamofire时出现错误。错误表示在调用中存在“额外的参数”。Swift Alamofire请求错误 - 在调用中额外的参数

class SwiftStockKit { 

class func fetchStocksFromSearchTerm(term: String, completion:@escaping (_ stockInfoArray: [StockSearchResult]) ->()) { 
    DispatchQueue.global(priority: DispatchQueue.GlobalQueuePriority.default).async { 

     let searchURL = "http://autoc.finance.yahoo.com/autoc" 

     Alamofire.request(.GET, searchURL, parameters: ["query": term, "region": 2, "lang": "en"]).responseJSON { response in 

      if let resultJSON = response.result.value as? [String : AnyObject] { 

       if let jsonArray = (resultJSON["ResultSet"] as! [String : AnyObject])["Result"] as? [[String : String]] { 

        var stockInfoArray = [StockSearchResult]() 
        for dictionary in jsonArray { 
         stockInfoArray.append(StockSearchResult(symbol: dictionary["symbol"], name: dictionary["name"], exchange: dictionary["exchDisp"], assetType: dictionary["typeDisp"])) 
        } 

        dispatch_async(dispatch_get_main_queue()) { 
         completion(stockInfoArray: stockInfoArray) 
        } 
       } 
      } 
     } 
    } 
} 

这是给我的错误行是:

Alamofire.request(.GET, searchURL, parameters: ["query": term, "region": 2, "lang": "en"]).responseJSON { response in 

如果有人能解决这个问题,我将非常感激,感谢

+0

看起来像这个帖子中可能会有一些有用的建议:https://stackoverflow.com/questions/39490839/alamofire-swift-3 -0-额外的参数,在呼叫 –

回答

1

试着改变你的要求是这样的:

Alamofire.request(searchURL, method: .get, parameters: ["query": term, "region": 2, "lang": "en"], encoding: JSONEncoding.default, headers: nil) 
相关问题