gpt4 book ai didi

c# - 为什么 Request ["url"] 默认设置?

转载 作者:太空狗 更新时间:2023-10-30 00:40:37 26 4
gpt4 key购买 nike

即使我没有 POST 或 GET 任何名为 url 的参数,它仍然会插入到 Request 变量中,从而导致 Request["url"] 始终被设置。默认值是请求的 aspx 文件。如果我在请求中包含 url 作为 POST 或 GET 参数,默认值将被覆盖。你能解释一下为什么在 .net 中实现了这种行为吗?

最佳答案

这记录在 HttpRequest 类信息中。查看 Items 集合,它特别指出它将查看来自 QueryString、Form、Cookies 或 ServerVariables 的对象。这确实可以追溯到经典的 ASP,其他语言也实现了类似的功能,例如 PHP,尽管 PHP 认为它不安全并且我相信它在 v 5.5 中已被关闭。 Microsoft 还建议不要这样做,因为它可能会被利用。在 Request["url"] 的情况下,它将返回一个服务器变量。如果查询字符串中包含变量 url,Request["url"] 将返回查询字符串变量,因为它在列表中首先被扫描。它是为了向后兼容经典 ASP 而引入的,因为它在经典 ASP 中被广泛使用。

HttpRequest Class MSDN Documentation

关于c# - 为什么 Request ["url"] 默认设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26077624/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com