2016-07-09 5 views
5

私は現在swiftのプロジェクトに取り組んでいます。私はREST API ためAlamofireを使用しますが、それは私がAFNETWORKINGAlamofireでrequestSerializerを設定する方法

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

requestSerializer

にパラメータを渡す必要が動作するようにしかし、私はAlamofireのための何かを見つけることができません。 私は速やかに私を助けてください新しいです。

答えて

4

あなたが応答にJSONデータを処理したい場合は、単に

//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を要求することと等価であるAlamofireEncodingAFJSONRequestSerializer

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

に相当し、符号化パラメータとしてJSONデータを渡す渡すことができます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

もう1つの質問 '成功(応答:response.result.value)'はアラモファイアのデフォルトブロックであるか、あなたが作成したカスタムです。 –

+1

実際には、そのすべてがあなたに依存しています。成功ブロックをどのように書いて、それに応じてスイッチブロックを処理したのですか? –

0

として辞書を渡します。 likeを使用してください。

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

関連する問題