2017-08-10 70 views
0

我试图发表请求,也发送标题令牌,但它总是给我错误。错误是“调用中的”额外参数“方法”。我尝试了很多方法来解决这个问题,但没有成功。Alamofire请求问题,同时使用标题

func eventsDate(){ 
    let postData = ["month":12, 
     "year": 2017] 
    let headerToken = defaultObject.object(forKey: KHeaderToken) 
    let headers = ["Authorization": headerToken] 
    Alamofire.request(KCalendarUrl, method: .post, parameters: postData, encoding: JSONEncoding.default, headers: headers).responseJSON(completionHandler: { response in 
         print(response) 
         //to get status code 
         if let status = response.response?.statusCode { 
          switch(status){ 
          case 200: 
           print("example success") 
           if let result = response.result.value { 
            let JSON = result as! NSDictionary 
           } 


          default: 
           print("error with response status: \(status)") 


          } 
         } 
         //to get JSON return value 

       }) 
} 
+0

让头:HTTPHeaders = [ “授权”:headerToken! “接受”: “应用/ JSON” ]使用这样 –

回答

1

头部应该是HTTPHeaders类型,而HTTPHeaders又是[String:String]。 我能想到的唯一的问题是这里发生的是headerToken不是字符串类型。 使用

let headerToken = defaultObject.object(forKey: KHeaderToken) as! String 
0

您需要确保您符合request函数所要求的类型。在你的情况,你应该确保:

  • KCalendarUrl是URLConvertible =>它可以是一个String/URL/URLComponents /的URLRequest(除非您使用符合URLConvertible扩展/自定义类型)
  • headerToken是字符串(headers必须是字符串键和值的字典)