2017-08-31 22 views
0

私はalamofire要求にこの機能を使用しています。私が間違っていることを教えてください。パラメータとコールバックでalamofire post request swift 3を使用する方法?

func requestForLogin(Url:String,username: String,password: String, completion: @escaping (_ Dic: NSDictionary?,_ status:NSInteger) -> Void) { 
    var dic=NSDictionary() 


    let params: Parameters = [ 
     "user": username, 
     "pass": password 
    ] 

    Alamofire.request(Url, method: .post, parameters: params, encoding: URLEncoding.httpBody) 
     .responseJSON { response in 

      switch response.result { 
      case .success: 
       print("Validation Successful") 
       dic=(response.result.value) as! NSDictionary 

       var error = NSInteger() 
       error=dic.object(forKey: "error") as! NSInteger 
       completion(dic,error) 

      case .failure(let error): 
       print(error) 

       completion(dic,0) 

      } 


    } 
} 
+0

あなたの問題はありますか?私達に教えていただけますか? –

+0

私は応答を得ていません – Pritam

+0

あなたは結果として失敗していますか? –

答えて

0

この試してみてください:あなたのリクエストボディを印刷すると

Alamofire.request(url, method: .post, parameters: parameter).validate().responseJSON { response in 
      switch response.result { 
      case .success: 
       if let result = response.result.value { 
       print("Validation Successful") 
       dic=(response.result.value) as! NSDictionary 
       var error = NSInteger() 
       error=dic.object(forKey: "error") as! NSInteger 
       completion(dic,error) 
       } 
      case .failure(let error): 
       print(error) 
       completion(dic,0) 
      } 
     } 
1

チェックを。あなたのリクエストボディはdebugprintメソッドで印刷できます。

郵便番号 google chrome addonでこのリクエストの本文を確認することもできます。
クロスチェックのみ。コードの下

試してください: -

let _request = Alamofire.request(Url, method: .post, parameters: params, encoding: URLEncoding.httpBody) 
     .responseJSON { response in 
      switch response.result { 
       case .success: 
        print("Validation Successful") 
        dic=(response.result.value) as! NSDictionary 

        var error = NSInteger() 
        error=dic.object(forKey: "error") as! NSInteger 
        completion(dic,error) 

       case .failure(let error): 
        print(error) 
        completion(dic,0) 
       } 
     } 
     debugPrint("whole _request ****",_request) 
関連する問題