2016-05-18 71 views
1

在Swift項目上工作,顯然我上傳的文件不是圖像。我也在使用Alamofire工具。Swift上傳圖片,從服務器響應說文件不是圖像?

let uuid = NSUUID().UUIDString 
    print ("MARK -- UUID is " + uuid) 
    let image = imageView.image 

    Alamofire.upload(.POST, "{RETRACTED}", multipartFormData: { 
     multipartFormData in 
     if let imageData = UIImageJPEGRepresentation(image!, 0.6) { 
      multipartFormData.appendBodyPart(data: imageData, name: uuid, fileName: uuid + ".png", mimeType: "image/png") 
     } 
     }, encodingCompletion: { 
      encodingResult in 

      switch encodingResult { 
      case .Success(let upload, _, _): 
       upload.responseJSON { response in 
        print(response.request) // original URL request 
        print(response.response) // URL response 
        print(response.data)  // server data 
        print(response.result) // result of response serialization 

        if let JSON = response.result.value { 
         print ("JSON \(JSON)") 
         self.displayAlert("Uploaded!", message: "{RETRACTED}", responseButtonText: "{RETRACTED}") 
        } 
       } 

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

這裏的JSON響應(如果需要的話我也有PHP的服務器端代碼):

JSON { 響應=「該文件不是一個圖像(.png格式和.jpg /。 jpeg圖像被接受)。 responseCode = 0; }

謝謝你們。

回答

0

您正在發送一個jpg圖像,但是爲png指定了mime類型。將MIME類型更改爲「image/jpeg」或發送一個PNG文件。