将查询字符串隐藏到URL中

时间:2014-01-29 04:51:46

标签: c# jquery asp.net-mvc asp.net-mvc-3 query-string

我想隐藏显示在我的URL中的Querystring,如下面的Image ::

所示

enter image description here

我将它打开到新窗口::

1)Jepery代码到Oepn新窗口:

 var url = rootUrl("Home/Test?Docs=" + check);
 var w = window.open(url, '_blank');

和 2)控制器(服务器端)代码:

    public class TestViewModel
    {
        public string Docs { get; set; }
        public long DocIDs { get; set; }
        public long TestIDs { get; set; }
    }
    public ActionResult Test(TestViewModel Test)
    {
        return View();
    }

但在这种情况下,文档ID显示在Querystring中。 我只想隐藏Querystring以获得更高的安全性。 我怎么能这样做?

3 个答案:

答案 0 :(得分:1)

您可以改为发帖请求。如果您希望加密,则应通过https发送

答案 1 :(得分:0)

  1. 您可以将数据存储在会话变量中或尝试存储值 饼干。

  2. 最好使用TempData,它只允许值 使用一次(首次访问时删除)。然而,这意味着 价值几乎会立即使用。

  3. 加密查询字符串。

答案 2 :(得分:0)

如果您不想显示参数,则不要将它们存储在主页的隐藏字段中,然后在打开的窗口(TEST)上使用带有window.opener.document的JavaScript获取值。的getElementById( 'ID_OF_THE_HIDDEN_ELEMENT_IN_THE_PARENT_PAGE')。

看看this example我写了另一个答案。