前段时间在项目中加入一个新的 Upload Attachment ,很顺利的部署到了 LIVE。但是在使用过程中,很意外的收到了 Exception Notification Mails ,总结下来都具有以下特点
- 访问 Upload Attachment
- 浏览器都是 Safari
- Raw Post 数据段有空白
- 报告
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 历史的一部分 :)
分享到:
- 2008-07-28 10:33
- 浏览 1012
- 评论(4)
- 论坛回复 / 浏览 (4 / 2204)
- 查看更多
相关推荐
标题中的“file-uploading-with-php-and-mysql.rar_file upload_truth5fw”暗示了这是一个关于使用PHP和MySQL实现文件上传功能的教程或代码示例。PHP是一种广泛使用的服务器端脚本语言,尤其适合Web开发,而MySQL是...
化妆品培训材料.pptx.baiduyun.uploading.cfg
Uploading Desktop
化妆品工艺.pptx.baiduyun.uploading.cfg
a highly efficient proprietary HttpModule, which enables uploading of files with size up to 2GB, while allocating a minimum amount of server memory. UI control for single- and multi-file uploads, ...
隐名合伙协议.doc.baiduyun.uploading
自述文件该自述文件通常会记录启动和运行应用程序所需的所有步骤。 您可能要讲的内容: Ruby版本系统依赖配置数据库创建数据库初始化如何运行测试套件服务(作业队列,缓存服务器,搜索引擎等) 部署说明...
2022提高组初赛.pdf.baiduyun.uploading
2023提高组初赛解析.pdf.baiduyun.uploading
"Uploading and Viewing Files the Easy Way" 这个主题聚焦于简化这一过程的技术和最佳实践。我们将探讨如何实现高效、安全且用户体验良好的文件上传与查看功能。 首先,上传功能的核心在于前端和后端的交互。前端...
NOIP2015提高组初赛参考答案.pdf.baiduyun.uploading
NOIP2015提高组初赛C++试题.pdf.baiduyun.uploading
NOIP2016提高组初赛C++试题.pdf.baiduyun.uploading
NOIP2013提高组初赛C++试题.pdf.baiduyun.uploading
NOIP2013提高组初赛参考答案.pdf.baiduyun.uploading
NOIP2011提高组初赛C++试题.pdf.baiduyun.uploading
NOIP2014提高组初赛C++试题.pdf.baiduyun.uploading
CSP2020提高组初赛C++试题.pdf.baiduyun.uploading
CSP2019提高组初赛参考答案.pdf.baiduyun.uploading