我正在爲一個項目,它有網絡花園場景,並不能保留會話/內存中的任何數據。 asp.net頁面從Appian(bpm工具)打開,我們通過查詢字符串傳遞id。 現在,客戶端要求我在閱讀後隱藏查詢字符串參數。但是,在這種情況下,登錄頁面爲http://a.aspx?id='123',讀取該值後,我們必須重定向到b.aspx而不公開id(查詢字符串)。 請建議我一個合適的方法來實現這一點。我真的不知道這個。重定向到一個頁面隱藏查詢字符串參數asp.net
回答
您可以將鍵/值對添加到標題中,它將不會在查詢字符串中可見。
HttpContext.Current.Response.Headers.Add(key, value);
和
string headerVal = HttpContext.Current.Request.Headers[key];
您可以在服務器端或HTTP POST而不是GET使用會話變量。
Session["id"] = id;
然後在b的負載檢索它。
要使用Post可以使用隱藏字段和表單。
//You can set it like this
<form name='IdForm' action='b.aspx' method='post'>>
<asp:HiddenField id="WhateverId" runat="server" value='<%= Request.QueryString["whateverID"] %>' />
</form>
在重定向使用JavaScript發佈
function Redirect() {
document.forms["IdForm"].submit();
}
您必須使用此哪裏重定向發生JS腳本。
終於在背後
HttpContext.Current.Request.Form["WhateverId"]
代碼將被部署在負載平衡的服務器中,所以不能使用會話。 – rahulsen002
共享會話可以實現。 –
你也可以通過用戶會話來負載平衡服務器,而不是請求。您的性能下降幾乎不存在,您將可以使用Session。這裏唯一的缺點是,如果一臺服務器出現故障,您的用戶必須重新登錄 –
- 1. 一個查詢字符串參數301重定向到家
- 2. 隱藏查詢字符串參數
- 3. 如何在asp.net內容頁面中隱藏查詢字符串?
- 4. 重定向到一個頁面並傳遞查詢參數
- 5. 隱藏查詢字符串MVC3 -ASP.NET
- 6. 隱藏查詢字符串參數在asp.net
- 7. .htaccess使用查詢字符串值將查詢字符串重定向到另一個頁面
- 8. Laravel 5.2重定向到頁面查詢字符串
- 9. 將查詢字符串重定向到另一個查詢字符串
- 10. 將查詢字符串重定向到非查詢字符串?
- 11. 重定向到另一個頁面,使用JavaScript,無查詢字符串
- 12. 重寫隱藏查詢字符串
- 13. 在查詢字符串中將隱藏字段從一個頁面傳遞到另一個頁面
- 14. 查詢字符串隱藏
- 15. .htaccess根據查詢字符串參數重定向到子域
- 16. 隱藏參數(查詢字符串)的URL(htaccess的),但這個參數發送到頁面(PHP)
- 17. htaccess重定向url查詢字符串到其他字符串參數
- 18. ASP.NET MVC:從查詢字符串參數重定向到規範網址
- 19. Asp.net重定向到另一個頁面
- 20. 根據查詢字符串重定向頁面
- 21. 接收查詢字符串和重定向頁面
- 22. IIS URL重定向到具有不同查詢字符串的同一頁面
- 23. 試圖重定向到同一頁面,但查詢字符串值
- 24. .htaccess 301重定向到沒有查詢字符串的同一頁面
- 25. .htaccess將特定查詢字符串重定向到主頁
- 26. 重定向URL與查詢字符串到另一個URL
- 27. web.config文件重定向查詢字符串到另一個域
- 28. 如何在頁面填充後隱藏查詢字符串
- 29. 重定向查詢字符串的URL非查詢字符串
- 30. 如何在ASP.NET中隱藏頁面名稱和查詢字符串?
b.aspx代碼可以請你給我一個例子(如果可能的話甚至是粗略的)? – rahulsen002
代碼將在負載平衡的情況下部署在多個服務器中。所以,假設第一個請求被髮送到服務器A,在那裏你設置了鍵值對,第二個請求將被髮送到服務器B,在那裏它不會得到值在httpcontext中設置。在這種情況下會出現這種情況嗎? – rahulsen002
服務器A可以設置變量,服務器B可以讀取它們。標題存儲在文檔中,以便它們能夠傳播。測試它... –