如何處理在不能使用會話時保持用戶登錄或更新購物車的操作?將userId或cartId添加到隱藏的輸入字段感覺就像是一個安全漏洞「禁用所有Cookie」設置並登錄用戶/購物車的最佳做法
回答
爲每個表單添加一個類似會話的ID(以及表單之外的每個普通鏈接也是如此,如果您希望能夠通過瀏覽保持狀態)確實是您在不能使用cookie時傳統上完成的方式。
實現參數會話(帶有難看的/page.php?session=459gj0tv789yn
風格的鏈接)是一件非常痛苦的事情,它會打破緩存並且用戶無法複製和粘貼鏈接以防意外分享會話。由於這些原因,大多數網站不再打擾,只需要cookie。
您可以做的另一件事是使用HTTP基本身份驗證來允許用戶登錄帳戶並將所有會話信息存儲在帳戶上。這對於購物車來說不太方便,因爲您必須要求用戶在將任何東西放入購物車之前先登錄,但在一般情況下,這是Cookie的好選擇。
是的我想說我從來沒有瀏覽過禁用的Cookie,以便了解有多少網站明確要求使用Cookie,然後回退到無Cookie系統。感謝HTTP基本認證的想法。對於那些對Cookie太偏執的人來說,這似乎是一個很好的解決方案 – Nat 2010-09-26 14:51:41
禁用cookie或引用者或更改用戶代理字符串的人通常是知道他們在做什麼並知道它會破壞很多頁面的人。因此,我不打算爲這些實施一些東西。 – NikiC 2010-09-26 15:28:33
如果您認爲發送每個請求的明文密碼*,HTTP基本身份驗證只是一個好主意。請記住,基本身份驗證只是用戶名:在Base64中編碼的密碼,通過HTTP標頭髮送... – Gareth 2010-09-27 01:10:00
那麼,要麼你必須將會話ID存儲在cookie中或查詢字符串參數中。
你說得對,使用參數是一個安全漏洞。所有人需要做的就是分享他們的網址,他們已經放棄了他們的網站身份。
有些框架,如Rails,如果cookie不可用,則不允許使用會話,如果您認真考慮安全性,我認爲這是可接受的立場。
你能以多快的速度解決Rubics Cube? – NikiC 2010-09-26 15:29:47
- 1. 購物車/登錄狀態 - 沒有Cookie?
- 2. Laravel購物車是爲所有用戶
- 3. 購物車杯了登錄
- 4. 購物車結帳功能沒有用戶登錄
- 5. 當沒有用戶登錄時存儲購物車(playframework疑惑)
- 6. 開發購物車從零開始的最佳做法
- 7. 使用JavaScript刪除PayPal購物車的所有Cookie?
- 8. 顯示添加到購物車的登錄用戶only..woocommerce
- 9. Woocommerce - 非登錄用戶的購物車爲空
- 10. iOS應用登錄最佳做法?
- 11. 無法配置konakart購物 - 購物車
- 12. 登錄到ASP.NET的購物車中
- 13. 通知登錄用戶的最佳做法
- 14. 登錄系統與購物車
- 15. 當購物車不空時設置購物車鏈接
- 16. 當用戶登錄時,將訪客用戶購物車項目與購物車中的物品合併是否合適
- 17. 如何在woocommerce中禁用購物車?
- 18. 會話的最佳做法 - 登錄
- 19. 登錄頁面的最佳做法?
- 20. 在C#上設計購物車域模型的最佳方式?
- 21. 當Mage_Sales_Order_Quote被覆蓋時登錄時,購物車從購物車消失不到
- 22. 使用PHP/MySQL實現購物車的最佳方式
- 23. 最好的php購物車
- 24. 最佳做法有記錄
- 25. 如何設置購物車的一天
- 26. 添加購物車上的購物車
- 27. 如何清除magento購物車中的所有購物車物品(來自世界各地的所有電腦)
- 28. 使用WCF時獲取所有登錄用戶列表的最佳做法是什麼
- 29. NSTextField購物車的位置
- 30. 在用戶點擊「查看購物車」之前,我可以讓「去購物車」不要購物車嗎?
我想知道爲什麼你不能使用會話...或者你的意思是沒有cookie的會話? – Archimedix 2010-09-26 14:38:57
是的,我認爲當你選擇「禁用所有的cookies」時,不應該禁用會話,但是......發生。 – Nat 2010-09-26 15:00:02