即使我没有POST或GET任何名为url的参数,它仍然会插入到Request变量中,导致Request["url"]始终设置该变量.默认值是请求的aspx文件.如果我在请求中包含url作为POST或GET参数,则会覆盖默认值.你能解释一下为什么在.net中实现这种行为吗?
这在HttpRequest类信息中有记录.查看Items集合,它特别指出它将查看来自QueryString,Form,Cookies或ServerVariables的对象.这确实可以追溯到经典的ASP和其他语言已经实现类似,例如PHP虽然PHP认为它不安全,我相信它在v 5.5中被关闭了.微软还建议不要这样做,因为它可以被利用.在Request ["url"]的情况下,它将返回一个服务器变量.如果查询字符串中包含变量url,则Request ["url"]将返回querystring变量,因为它首先在列表中进行扫描.它被用于向后兼容经典ASP,因为它在经典ASP中被广泛使用.
| 归档时间: |
|
| 查看次数: |
138 次 |
| 最近记录: |