簡體   English   中英

錯誤:僅允許獲取請求

[英]error :Only get requests are allowed

我得到這個例外

ActionController :: MethodNotAllowed:僅允許get請求。

請任何人為此提供解決方案

此錯誤表示您正試圖將其發布/放置/刪除到僅接受GET請求的路徑。 您需要確認您的路線以及所使用的路徑和/或表單方法是否匹配。

當您定義了標准路由並且客戶端嘗試使用不同於GET或POST的HTTP方法連接到該路由時,會發生此錯誤。

通常,這是由使用Microsoft Office Protocol Discovery的客戶端引起的。 這些客戶端發送一個OPTION請求 ,Rails不支持該請求

您可以通過多種方式解決問題:

  1. 忽略生產環境中的錯誤
  2. 在控制器中使用before_filter和head 406防止錯誤
  3. 使用控制器中的rescue_from來挽救錯誤
  4. 防止錯誤通過機架中間件過濾請求
  5. 防止使用您的網絡服務器阻止非GET / POST / HEAD請求的錯誤

我個人更喜歡最后一個選項,但是它要求您在服務器上具有管理特權。 否則,“機架中間件”選項是過濾意外請求的最有效方法。

您如何嘗試進入此頁面? 看來您正在嘗試進行其他類型的RESTful調用(放置,發布,刪除)和該方法。 刪除該控制器的代碼對診斷問題確實很有幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM