我们有一个带有搜索表单的 Web 应用程序,允许用户输入一些文本,我们根据他们输入的内容限制结果。最近我们开始收到以下错误:
System.Web.HttpRequestValidationException: A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$results_search="...967.hcpm, <a href="http://www....").
这个错误每天都在发生,这似乎来自机器人,查看错误似乎机器人正在将 html ahref 链接放入搜索字段并尝试搜索,从而导致错误。
在四处搜索后,我发现有两种方法可以处理这个问题,要么使用 Jquery,要么将 validateRequest 设置为 false,然后在页面后面的代码中使用 htmlencode。有谁知道 jquery 代码是否适用于机器人?我不确定机器人是如何做到这一点的,如果它点击页面并点击按钮或以其他方式发送请求,因为按钮点击是导致回发触发搜索的原因,我们使用 POST 所以没有发送任何内容url 到搜索页面,页面只是回发给自己,而在 PostBack 上是搜索完成的时候。