我有一堆控制器在我的rails應用程序返回:html格式。當我嘗試使用.js擴展名訪問網址時,它將返回「完成406不可接受」。不正確的行爲是否應該返回404?Rails控制器respond_to返回404
感謝
我有一堆控制器在我的rails應用程序返回:html格式。當我嘗試使用.js擴展名訪問網址時,它將返回「完成406不可接受」。不正確的行爲是否應該返回404?Rails控制器respond_to返回404
感謝
你會得到一個錯誤404
如果你的控制器的作用是能夠向JS請求作出響應,但action.js.erb
並不存在。由於您的控制器僅允許對HTML
的響應,因此406 Not Acceptable
錯誤將是預期的行爲。
如果你想處理JS請求,你必須有這樣的事情:
respond_to do |format|
format.js
format.html
end
這將加載相應的.js.erb或.html.erb文件時動作被調用。更多信息請見Rails API
沒有。控制器不響應javascript請求,所以請求是不可接受的。 – sevenseacat
如果我決定不在我的控制器中使用respond_to塊,並使用.js擴展名訪問url,它將返回不帶佈局tempate的html視圖。 –
406正確地返回爲什麼沒有匹配的格式。 –