2012-02-14 44 views
1

隨着Web瀏覽器越來越快地嘗試越來越多的資源被預加載|緩存|抓取]。預加載/預緩存可能對我的Web應用程序不利

我用笨我的web應用程序,我已經建立了我的控制器,這樣www.mysite.com/users/delete/10將刪除用戶#10

我的問題是:將在此頁(無論是一年還是十年)都可以通過網頁瀏覽器進行預覽,以便顯示我的用戶列表也可以將其全部刪除(例如)。

我知道這是一個很主觀的問題,但我認爲這很重要。

感謝您的啓示。

回答

0

這就是爲什麼有different HTTP verbs,和爲什麼只有GET請求被認爲是冪等*的原因。即預計您可以根據需要多次發出相同的GET請求,獲得相同的結果。瀏覽器,搜索引擎和其他一切都希望以這種方式工作,所以不會修改或刪除GET請求上的數據。因爲是的,搜索引擎的預取或索引會刪除所有的數據,這一直是many laughs around the interwebs的原因,只要搜索引擎存在。

要添加新數據,您應該使用POST請求。修改現有數據,PUT請求。要刪除數據,請刪除。在實踐中,PUT和DELETE並不是真的被瀏覽器所支持,所以這些通常都會成爲POST請求。但至少不是GET請求。

*不考慮HEAD請求等。

0

任何「REST-ful」訪問您的任何網頁絕不應該「僅僅因爲你碰巧在這裏,」東西。還需要更多的內容:例如,活動的,已驗證的,尚未過期的會話。 (即「你必須登錄,你必須是上帝自己。」)如果你不是,那麼請求被拒絕......期間。

演示適當形成REST風格的URL可能是一個足夠的辦法目前請求您的後端系統,但並沒有規定要求,已提出,應遵命!

+0

不僅僅是被認證和所有這一切,這應該是一個POST或DELETE請求。 GET請求不得修改任何內容。 – deceze 2012-02-14 03:56:38

相關問題