2016-11-30 53 views
1

是我的參數POST方法不適用於swift 3.0 Alamofire 4.0?下面

var comment: [String:AnyObject] = [:] 
comment = [ 
      "txtUsername": (txtUsername?.text)! as AnyObject, 
      "txtPassword": (txtPassword?.text)! as AnyObject 
     ] 

和POST方法函數包含下面的代碼

Alamofire.upload(
     multipartFormData: { multipartFormData in 

      for (key, value) in Param { 
       multipartFormData.append((value.data(using: .utf8))!, withName: key) 
      } 

      let image = UIImage(named: "bodrum.png")! 
      if let imageData = UIImageJPEGRepresentation(image, 1) 
      { 
       multipartFormData.append(imageData, withName: "file", fileName: "file.png", mimeType: "image/png") 
      } 

    }, 
     to: webpath, 
     encodingCompletion: 
     { 
      encodingResult in 

      switch encodingResult 
      { 
       case .success(let upload, _, _): 
        upload.responseJSON 
        { 

         response in 

         guard case .success(let rawJSON) = response.result else { 
          return 
         } 
         guard let json = rawJSON as? [String: String] else { 
          return 
         } 

         if json["Success"] == "True"{ 
          print("Success") 
         } 
         else{ 
          print("Failure") 
         } 
        } 

       case .failure(let encodingError): 
        print(encodingError) 
      } 
    } 
    ) 

這裏的目標C我的web服務成功的工作,但在使用此代碼它總是給予迴應「假」?這段代碼中是否有任何錯誤。

+0

不知道它是否解決了這個問題,但是在Swift 3中註解了'[String:Any]' - 或者省略了註釋,因爲字典顯然是'[String:String]' - 並且將這些強制類型轉換爲'AnyObject' – vadian

+0

您的意思是打印「失敗」嗎? –

回答

0

許多事情都可能出錯。有一對夫婦的事情,如果我要調試我會檢查:

  1. 如果我想使用PNG,我可能會在這段代碼使用UIImagePNGRepresentation(...),而不是UIImageJPEGRepresentation
  2. 如果我想使用JPEG,我會將multipartFormData.append(imageData, withName: "file", fileName: "file.png", mimeType: "image/png")更改爲multipartFormData.append(imageData, withName: "file", fileName: "file.jpg", mimeType: "image/jpeg")
  3. 如果(2),嘗試將UIImageJPEGRepresentation(image, 1)更改爲UIImageJPEGRepresentation(image, 0.5)。它可能會失敗,因爲圖像太大,因此應用更高的壓縮率可能會發現問題。
+0

即使我沒有發送圖像我只發送參數,然後也不起作用 – Dharini

相關問題