2016-10-03 2 views

답변

2

이 문제는 Alamofire 4로 업그레이드하고 headers 인수를 이동하여 통화의 마지막 인수로 사용하여 해결했습니다. 또한 encoding: .JSONencoding: JSONEncoding.default이어야합니다.

전화는 다음과 같아야합니다

parameters 어떤 유형
Alamofire.request(url: myUrl, method: .put, parameters: myParams, 
    encoding: JSONEncoding.default, headers: myHeaders) 
+0

I가로 전환하려고 :

Alamofire.request(url:treeURL!, method: .get, parameters: [:], encoding: JSONEncoding.default, headers: ["Authorization" : app.getToken()]) 

이되었다 파라미터를 부호화 : .JSON, headers : headers)하지만 여전히 오류가 발생합니다 :/ – user2636197

+0

인코딩을 위해'.JSON'을'JSONEncoding.default'로 대체하십시오. 원래 답변이 업데이트되었습니다. – DerFlickschter

+0

하지만 여전히 사용 중입니다. 사용할 때 확인할 수없는 식별자 JSONEnconding 사용 Alamofire.request ("www.myUrl", 메서드 : .post, 매개 변수 : 매개 변수, 인코딩 : JSONEnconding.default, 헤더 : 헤더) .responseJSON() – user2636197

2

? 그것은 적어도 [:] 수있다 - 같은 :

Alamofire.request(url: myUrl, method: .put, parameters: [:], encoding: JSONEnconding.default, headers: myHeaders)

+0

다음과 같이하십시오. 매개 변수 : [String : AnyObject] – user2636197

+0

예. 이 트릭을 했나. – midori

+0

그러나 아직 사용 중입니다. 사용할 때 미해결 식별자 JSONEnconding 사용 Alamofire.request ("www.myUrl", 메서드 : .post, 매개 변수 : 매개 변수, 인코딩 : JSONEnconding.default, 헤더 : 헤더) .responseJSON() – user2636197

0
Alamofire.request("http://....", method: .put , parameters: parameters, encoding: JSONEncoding.default).responseJSON{ 
      response in 
      if response.result.isSuccess { 
       //some code 
      } 
     } 
+0

이것은 도움이되지 않습니다. – midori

+0

@midori 그것은 나를 위해 일합니다. –

0

난 후 바로 Alamofire 호출을하는 URLRequest로 마음을 아프게합니다. 내가 깨닫지 못했지만 아무것도 깨지 못하고 일했다. 나는 Swift 3과 XCode 8.2.1을 사용하고 있으며, 이것은 신속한 sourceKit이 객체를 잘못 인식한다고 생각합니다. Alamofire.request (URL : "www.blabla"방법 .post 파라미터 :

var request = URLRequest(url: treeURL!) 
    request.httpMethod = "GET" 
    request.allHTTPHeaderFields = ["Authorization" : app.getToken()] 
    Alamofire.request(request as URLRequestConvertible)