1

我知道有关此问题的类似问题,但我无法在 ActionDispatch::Http::UploadedFile 中强制进行文件名转换。这样做似乎不正确。

我正在使用Jquery-File-Upload 上传文件,发送到 rails 并使用 Paperclip 保存

这是我在 rails 控制器中的参数:注意@original_filename="ééééááá.jpg"filename=\"\xC3\xA9\xC3\xA9\xC3....

 Parameters: {"files"=>[#<ActionDispatch::Http::UploadedFile:0x007fe7d587d5d8 @original_filename="ééééááá.jpg", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"files[]\"; filename=\"\xC3\xA9\xC3\xA9\xC3\xA9\xC3\xA9\xC3\xA1\xC3\xA1\xC3\xA1.jpg\"\r\nContent-Type: image/jpeg\r\n", @tempfile=#<File:/var/folders/xn/tp46f9fn0kz1181k28c45zf40000gn/T/RackMultipart20120710-65737-1ac40o4>>], "id"=>"1"}

Encoding::CompatibilityError(不兼容的字符编码:UTF-8 和 ASCII-8BIT):app/controllers/documents_controller.rb:21:in `create'

我必须在服务器端或客户端/表单端解决这个问题?

更新

好吧,我检查了https://github.com/thoughtbot/paperclip/issues/301并解决了这个问题:

AWS.config( :logger => nil )

但还是太猴子了,导致调整大小仍然抛出 utf8 异常

更新 2

改为使用载波

4

0 回答 0