我有一個post方法,其中,我想傳遞一些參數,如student_id。 我能夠做到這一點通過使用隱藏的領域,但我不想使用隱藏的領域。 一些事情是這樣的:傳遞參數POST方法沒有隱藏字段asp.net
<form id="form1" action="post" src="https://mydomain.com?student_id=value">
請注意,我試圖隱藏從URL的信息。 我非常瞭解html,所以不用擔心語法。
任何人都可以幫助我嗎?
在此先感謝。
我有一個post方法,其中,我想傳遞一些參數,如student_id。 我能夠做到這一點通過使用隱藏的領域,但我不想使用隱藏的領域。 一些事情是這樣的:傳遞參數POST方法沒有隱藏字段asp.net
<form id="form1" action="post" src="https://mydomain.com?student_id=value">
請注意,我試圖隱藏從URL的信息。 我非常瞭解html,所以不用擔心語法。
任何人都可以幫助我嗎?
在此先感謝。
的三種選擇,因爲我看到他們是:
在我能夠提出建議之前,我需要了解更多關於您的要求。你說你想避免前兩個,但是如果值被加密或代理(比如使用數據庫ID而不是學生ID),你是否可以使用它們。通常,我使用人工數據庫id(autogenerated integer)對其進行代理並將其直接放入URL中,但我將使用ASP.NET MVC而不是Webforms。
如果您擔心向客戶端顯示一些敏感數據,答案是避免將其完全發送給客戶端。
將您的服務器上的值存儲在數據存儲區或緩存中,並將密鑰傳遞給表單中的值。因此,例如:
<form id="form1" action="post" src="https://mydomain.com">
<input type="hidden" name="student-cache-key" value="23154546">
,然後在表格張貼,你會看在你的表或緩存23154546
檢索值...(僞代碼)
int studentId = cache.Get(post['student-cache-key']);
// studentId now equals 5, or null etc
無論機制你使用,你將不得不檢查商店中存在的價值,並處理它不存在的情況。
也許如果你告訴我們爲什麼你認爲隱藏的領域不是合適的解決方案,我們可以制定其他想法。順便說一下,`?student_id = value`是混合POST和GET(非常沒有意義)。 – 2011-02-12 16:05:19