-3

我想将一些我正在使用的字段隐藏到 URL 中。

其实我正在使用

@Url.Action("Action", "Controller", new { @model.Id }) 

这很好用,但我想隐藏它们,而且我不必使用表单。

感谢帮助我:-)

4

2 回答 2

0

这里对网络的工作方式存在根本性的误解。HTTP 动词的存在是有原因的。GET 用于检索资源;POST 用于创建新资源或在服务器端执行某些操作。简单地通过 POST 检索资源是不合适的,这就是浏览器没有本机能力的原因。

此外,您通过 POST 以某种方式“隐藏”某些东西的想法是荒谬的。POST 中的数据与 GET 中的数据一样可见。你一无所获。

更重要的是,甚至没有理由尝试。如果您试图隐藏 id 是因为您认为这样做可以获得某种安全性,那您就错了。id 完全是上下文相关的:它在数据库之外没有任何意义,如果有人获得了对您数据库的访问权限,那么拥有记录的 id 是您的问题最少的。

于 2013-06-27T17:24:10.893 回答
0

无法从 URL 中隐藏任何内容。如果它在 URL 中,它是可见的。如果您不想在 URL 中包含它,您可以将此信息存储在服务器上,例如使用 Session。

当然,如果这不是出于安全目的,使用 POST 方法会阻止此信息发送到 URL。

于 2013-06-27T15:56:02.617 回答