我有一个post方法,其中,我想传递一些像student_id这样的参数。 我可以通过使用隐藏字段来做到这一点,但我不想使用隐藏字段。 这样的事情:
<form id="form1" action="post" src="https://mydomain.com?student_id=value">
请注意,我正在尝试隐藏网址中的信息。 我非常了解HTML,所以不要担心语法。
有人能帮助我吗?
提前致谢。
答案 0 :(得分:0)
我看到的三个选择是:
在我提出建议之前,我需要了解更多有关您的要求的信息。你说你想要避免前两个,但我不清楚,如果值是加密的或代理的(例如使用数据库ID而不是学生ID),是否可以使用它们。通常,我使用人工数据库id(自动生成的整数)代理它并将其直接放在URL中,但我也会使用ASP.NET MVC而不是webforms。
答案 1 :(得分:0)
如果您担心向客户端显示一段敏感数据,答案是避免完全发送。
将值存储在服务器上的数据存储或缓存中,并将键传递给表单中的值。例如:
<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
无论您使用何种机制,都必须检查商店中存在的值,并处理不存在的情况。