前段时间在项目中加入一个新的 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
- 浏览 966
- 评论(4)
- 论坛回复 / 浏览 (4 / 2178)
- 查看更多
相关推荐
file-uploading-with-php-and-mysql
Data uploading mechanism for internet of things with energy harvesting
化妆品培训材料.pptx.baiduyun.uploading.cfg
Uploading Desktop
化妆品工艺.pptx.baiduyun.uploading.cfg
Uploading and Downloading Files in Web Dynpro Java
Uploading and Viewing Files the Easy Way
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, ...
自述文件该自述文件通常会记录启动和运行应用程序所需的所有步骤。 您可能要讲的内容: Ruby版本系统依赖配置数据库创建数据库初始化如何运行测试套件服务(作业队列,缓存服务器,搜索引擎等) 部署说明...
Laravel开发-cloud-uploading-service 基于lumen5.6/laravel开发了云上传服务,包括aliyun oss、qcloud cos。包括图片、文件和其他碎片上载
化妆品卫生安全培训.pptx.baiduyun.uploading.cfg
一个基于C#+ASP.NET实现的.NET Image Uploading图片上传程序例子代码。
化妆品品牌调研概述课件.pptx.baiduyun.uploading.cfg
化妆品化学聊城大学化学化工学院.pptx.baiduyun.uploading.cfg
npm install --save react-images-uploading 纱 yarn add react-images-uploading 用法 您可以在此处查看基本演示: Javascript: https : //codesandbox.io/s/react-images-uploading-demo-u0khz 打字稿: ...
化妆品卫生知识及质量意识培训教材.pptx.baiduyun.uploading.cfg
基于深度强化学习的四足机器人研究(Matlab代码实现).rar.baiduyun.uploading
12-13-3线性代数A期末试题A卷.pdf.baiduyun.uploading.cfg
21221-TCPIP协议课程设计任务书(网嵌192).doc.baiduyun.uploading.cfg
该代码的Android应用程序。 良好的代码,以Dropbox的优势。