Paperclip::Errors::NotIdentifiedByImageMagickError - Rails 应用 + Swift 2

Paperclip::Errors::NotIdentifiedByImageMagickError - Rails app + Swift 2

我正在尝试从 Swift 2 应用程序上传照片,但收到错误请求。

我正在使用:

我正在执行这段代码:

Swift

func convertImageToBase64(image: UIImage) -> String {
   let imageData = UIImagePNGRepresentation(image)
   let base64Encoded = imageData!.base64EncodedStringWithOptions(.Encoding64CharacterLineLength)
   return base64Encoded
}

然后我通过参数发送信息:

let image_str = self.global.convertImageToBase64(self.global.compressForUpload(self.newMediaImage.image!, withHeightLimit:750, andWidthLimit:750))

parameters["spot[image]"] = "data:image/png;base64,\(image_str)"

注意我的 headers 是:

headers["Accept"] = "application/json"
headers["Content-Type"] = "multipart/form-data"
headers["Access-Control-Request-Method"] = "POST"
headers["Access-Control-Request-Headers"] = "X-Requested-With"

我收到此消息错误:

I, [2016-01-07T10:11:41.148123 #4490]  INFO -- : Command :: identify -format '%wx%h,%[exif:orientation]' '/tmp/8d777f385d3dfec8815d20f7496026dc20160107-4490-m5y4d3[0]' 2>/dev/null
I, [2016-01-07T10:11:41.152860 #4490]  INFO -- : [paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: Paperclip::Errors::NotIdentifiedByImageMagickError>
I, [2016-01-07T10:11:41.153061 #4490]  INFO -- : Command :: identify -format '%wx%h,%[exif:orientation]' '/tmp/8d777f385d3dfec8815d20f7496026dc20160107-4490-m5y4d3[0]' 2>/dev/null
I, [2016-01-07T10:11:41.157503 #4490]  INFO -- : [paperclip] An error was received while processing: #<Paperclip::Errors::NotIdentifiedByImageMagickError: Paperclip::Errors::NotIdentifiedByImageMagickError>
I, [2016-01-07T10:11:41.544868 #4490]  INFO -- : [AWS S3 400 0.378927 0 retries] head_object(:bucket_name=>"api",:key=>"spots/images//original/data.") AWS::S3::Errors::BadRequest AWS::S3::Errors::BadRequest

I, [2016-01-07T10:11:41.917895 #4490]  INFO -- : [AWS S3 400 0.372396 0 retries] head_object(:bucket_name=>"api",:key=>"spots/images//medium/data.") AWS::S3::Errors::BadRequest AWS::S3::Errors::BadRequest

I, [2016-01-07T10:11:42.293064 #4490]  INFO -- : [AWS S3 400 0.374527 0 retries] head_object(:bucket_name=>"api",:key=>"spots/images//thumb/data.") AWS::S3::Errors::BadRequest AWS::S3::Errors::BadRequest

我的 rails 应用收到的一张图片是:

lN c32Ov1f9nesG/5nVgRpMz wHT1CrwVQ3dM x3tff cnU xpMdWV9MpX1m5Vi\r\n/VvXv3VdB55EHajBVFfUJ1FRayjVfWt1HXg daAGUw2mGkx1HajrQF0HHlUdeB5g\r\nqvtUHlWlq998H9Gbb/N/o3m7brDr/85PqAPPA0w/4cHWje8janzr379uXOs68KTq\r\nQA2musI qQpbA78Gfl0Hfv06UIOpBlMNpp9VB56q2 yp3vfP p3rz713G/M0wFT/\r\nEe79w9Zvlb/ W2X9G9e/8a9aB54GmOo3jhpMdR2o60BdB55NHajBVFf2Z1PZf9W3\r\ny/S9ql6Far6u399ev vn e3P8J71sAbTPR/YL9241c/ih/8B6/pUu PqOvDvdaAG\r\nU90Y141xXQfqOlDXgUdVB2ow1RXyUVXI u3x398ev mZ1G6oun4/wTauBtMT/NG \r\nqaGqv2/dUNV1oK4Dj7wO1GB65D9QDaEHVhD17103ynUdePR1oAZTXUkffSWt4VzD\r\nua4Dz6sO1GCqwVSDqa4DdR2o68CjqgM1mOoK agqZP1m/LzejOvfu/69b6oDNZhq\r\nMNVgsg7U0Wt1PajbgkdTB2ow1ZXx0VTGm96c6rL6jbquA8 vDtRgqsFUg6muA3Ud\r\nqOvAo6oDNZiee4WsXViP6g/5IOrA37T XX/871o/8wd75jWYnjuY6u//YH mB4FK\r\n/XvUv0ddB17UYKorQd0Q1HWgrgN1HXhUdaAGU10hH1WFrFXH8 vorn/z jdvrgM1\r\nmGow1WCq60BdB o68KjqQA2mukI qgrZ/OZUb9dv03UdeH51oAZTDaYaTHUdqOtA\r\nXQceVR2owVRXyEdVIeu34 f3dlz/5vVv3lwHajDVYKrBVNeBug7UdeBR1YEaTHWF\r\nfFQVsvnNqd6u36brOvD86kANphpMNZjqOlDXgboOPKo6UIOprpCPqkLWb8fP7 24\r\n/s3r37y5DtRgqsFUg6muA3UdqOvAo6oDNZjqCvmoKmTzm1O9fYe36Xry0LoO/2Lt\r\nWA2mX wHrRvyOzTk9W9eN R1HXjUdaAGU11BH3UFrUFbg7auA8 vDtRgqsFUg lX\r\nrQO1i6 u20 0bn/6/135Eixq4JAOAAAAAElFTkSuQmCC

现在可以了。解决方案是:

我刚刚将 aws-sdk gem 的版本更改为 < 2 gem 'aws-sdk', '>= 2.0.0' 效果很好。

除此之外,我 re-installed imagem在 amazon ec2 和 Rmagick 上使用 agick。