我在ASP.NET mvc应用程序中工作。关于URL,当用户在页面之间导航时,我可以在地址栏中看到Controller和动作名称。有没有办法隐藏它们,这样地址栏总是显示http://mywebsite.com而没有任何动作名称或控制器名称后缀,或者是否有其他标准做法?或者可以保留URL,其中包含动作和控制器后缀?
答案 0 :(得分:1)
网址没有变化是非常糟糕的做法。它不仅看起来令人困惑,而且还无法为事物添加书签,复制和粘贴网址。
为什么不在URL中留下描述性名称? (您使用的是描述性名称,不是吗?)
答案 1 :(得分:1)
该网址应该是对内容的描述。
http://www.mysite.com/并未描述查看产品#22的详细信息,但是:
http://www.mysite.com/Products/Details/22是。这是预期的行为,你可以通过弄乱旋转来混淆它们,但这并不明智,因为它会使你的网页更难调试而且不需要。
暴露控制器/方法名称并不是一个安全风险,因为您根据要向用户公开的功能选择了这些名称。还有许多其他安全机制可以防止它们弄乱诸如用户身份验证,过滤器等等......