2016-07-09 1 views
5

현재 프로젝트에서 swift으로 작업 중입니다. 나는 REST API 에 대한 Alamofire을 사용하지만 내가 AFNETWORKINGAlamofire에서 requestSerializer를 설정하는 방법

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 
manager.requestSerializer = [AFJSONRequestSerializer serializer]; 

에서 requestSerializer

에 매개 변수를 전달해야 작동하도록하지만 난 Alamofire에 대한 아무것도 찾을 수 없습니다. 나는 신속하게 나를 도와주세요. 당신이 응답에 JSON 데이터를 처리하려면

답변

4

당신은 패스 인코딩 매개 변수로 JSON 데이터를 전달할 수는 Alamofire에서 Encoding 단지

//This will give you response in JSON 
request?.responseJSON { response in 
     switch response.result 
     { 
     case .Success: 
      success(response: response.result.value) 
     case .Failure(let error): 
      failure(error: error) 
     } 
    } 

requestJSON가 동등 요청 AFJSONRequestSerializer

request = Alamofire.request(.POST, webServicesURL, parameters: parameters, encoding: .JSON, headers: self.headers) 

에 해당 Alamofire의 AFJSONResponseSerializer까지

사용자 정의 헤더를 전달하려는 경우 또는, 당신은이에 대한 요청에 encoding 태그를 사용할 수 있습니다

let headers = [ 
    "Content-Type": "application/json" 
] 
//Here we are passing the header in header parameter. 
request = Alamofire.request(.POST, webServicesURL, parameters: parameters, encoding: .JSON, headers: self.headers) 
+0

좋습니다. 사용해 보겠습니다. –

+1

Question'success (response : response.result.value)는 alamofire의 기본 블록이거나 사용자가 작성한 사용자 정의입니다. –

+1

실제로, 그 모든 것은 당신에 달려 있습니다. 어떻게 성공 블록을 작성하고 그에 따라 스위치 블록을 처리했는지 –

0

로 사전을 전달합니다. like 사용,

Alamofire.request("<url>", method: .post, parameters: parameters, encoding: JSONEncoding.default){(response:DataResponse<Any>) in }

관련 문제