2015-02-24 189 views
0

嗨,我有這個需要用戶登錄的應用程序。 用戶登錄後,他被重定向到顯示該用戶文檔的頁面。使用MVC 5隱藏URL中的查詢字符串5

要顯示該信息,我在控制器上調用正確的操作,並傳遞我的用戶對象。該對象包含用戶名和密碼。 當我看到我的網址,它看起來像:

http://localhost:53703/Documents?UserName=bart&UserId=10&Password=AllPhi%242015 

有沒有辦法,我可以隱藏這些查詢字符串值(用戶名= BART &用戶ID = 10 &密碼= AllPhi%242015)

+0

如果用戶使用任何內置機制登錄,則應通過控制器User-property訪問用戶,不需要將其傳入。 – Daniel 2015-02-24 14:52:23

+0

@Daniel您的意思是控制器的用戶屬性? – 2015-02-24 14:54:47

+1

https://msdn.microsoft.com/en-us/library/system.web.mvc.controller.user(v=vs.118).aspx – Daniel 2015-02-24 15:00:19

回答

2

我的方式不能足夠強烈地迴避內置的認證機制,但回答這個問題:你不能隱藏查詢字符串。 如果你想隱藏數據,當你從客戶端發送時,你需要做一個post請求而不是get,但post-data在請求中仍然可見(純文本)

但是在這種情況下看起來你想在動作之間傳遞數據,然後你想使用tempdata。在此處查看以供參考:http://rachelappel.com/when-to-use-viewbag-viewdata-or-tempdata-in-asp.net-mvc-3-applications

+0

我已經使用TempData解決了我的問題 – 2015-02-24 15:27:34