我在一个页面上有一系列远程表单,每个表单都应该能够在更新或创建对象时上传文件。我在开发过程中进行了彻底的检查和测试,只要我使用 Remotipart,这似乎工作得很好。
然而,今天早上我将我的更改推送到 Heroku 上的暂存服务器,当我尝试通过文件上传提交其中一个表单时,我得到了406 Not Acceptable
服务器的响应。所以这里我的页面没有得到更新,因为我没有从服务器获得预期的 js 模板响应。但是,如果我重新加载页面,我尝试上传的文件会显示得很好。
表单是使用 simple_form (with remote: true
) 创建的,我使用 Carrierwave 和 Fog 将文件上传到 S3(也在开发中测试,所以我不认为是这样)。
据我所知,网络检查器显示了相同类型的数据。我发现请求有效负载没有显着差异。
我不知道我做错了什么(如果有的话)。有没有其他人经历过这种情况,或者可能知道出了什么问题?
更新
所以我至少想出了一件事。我的控制器只处理js
格式请求。我html
通过重定向到另一个路径来处理格式化请求,并且该页面的 html 现在作为 ajax 响应发回。我似乎无法弄清楚为什么,当内容类型和一切似乎在开发和登台上都相同时,响应是否以错误的格式发送/呈现。