rails action_controller控制器处理(#show as */*)



我正在发送一个ajax请求到我的控制器#action,但是我的开发日志显示

Processing by FormsController#show as */*

虽然这应该是formscontroller# show as JS作为一个ajax请求

因此,它呈现的格式首先在我的响应块在控制器

如:-

respond_to do |format|
  format.html{ }
  format.js { }
end

如果我发送ajax请求到我的控制器它不工作,因为我的控制器呈现html响应,而它应该处理JS请求。

但是如果respond_to block是这样的

respond_to do |format|
  format.js { }
  format.html{ }
end

运行正常

我认为

Processing by FormsController#show as */* 

正在响应它在respond_to块中首先找到的格式。

但是我关心的是为什么我的开发日志显示

Processing by FormsController#show as */*

代替

Processing by FormsController#show as JS

,当我发送了一个ajax请求。是我做错了什么,还是遗漏了一个小而重要的部分?

更新Rails.js文件。

我假设你正在使用jQuery-Rails。以前,Rails AJAX请求不会自动设置请求的内容类型。这已经解决了,所以如果你更新你不应该有*/*作为最高优先级的内容类型在你的HTTP头。

最新更新