`
hozaka
  • 浏览: 38915 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Uploading with Safari

阅读更多

前段时间在项目中加入一个新的 Upload Attachment ,很顺利的部署到了 LIVE。但是在使用过程中,很意外的收到了 Exception Notification Mails ,总结下来都具有以下特点

  1. 访问 Upload Attachment
  2. 浏览器都是 Safari
  3. Raw Post 数据段有空白
  4. 报告 undefined method `read' for "":String

根据这些线索,在 dev 环境下模拟了各种可能的情况,终于重现了这个 BUG:不选择任何文件。这个结果很让人感到意外,Rails 在处理一个请求的时候会自动的将 multipart 段进行封装,返回一个 Template File 对象。但是在处理来自 Safari 的请求,却返回一个空白字符串。

之后查过很多 tickets ,不少国外用户都遇到过这个问题(国内 mac 用户比较少?),而 Rails 团队一直都没有做出过修改,所以自己写了一个 patch 放在项目里。今天工作的时候无意中又看到了这个 patch,心血来潮检查了一下 dev.rubyonrails.org 上是否有解决方案了,得到一个 changeset: http://dev.rubyonrails.org/changeset/7759

没有去查证这个 bug 发现以后时隔多久才被修正,记上一笔,也作为 Rails 历史的一部分 :)

分享到:
评论
4 楼 liusong1111 2008-09-01  
我们还遇到一种情况:
mac os标准方式安装的程序,看起来像一个文件,双击能执行,在safari里也可以让用户选中上传.但它本质是个directory,上传时会报错,具体现象不记得了.
这应该是safari的bug吧.
3 楼 gxbsst 2008-09-01  
以前我做那个News的CMS的时候就遇到过这个问题了...
2 楼 hozaka 2008-07-31  
文中给了一个链接 changeset #7759 ,在这个 patch 以后这个 bug 已经被修复了
1 楼 0000 2008-07-31  
我的上传在safari下好像没问题?。。。

相关推荐

Global site tag (gtag.js) - Google Analytics