ASP.. NET和HTML/XML控制文本



我有一些必须能够接受XML输入的webforms(当然,包含<>字符,我认为这是导致问题的原因)。然而,目前每当我单击提交按钮,其中一个表单字段包含这种类型的输入时,抛出代码为500的Sys.WebForms.PageRequestManagerServerErrorException异常。如果输入没有<>,一切都很顺利。我该如何解决这个问题?

我在关闭Page验证时会非常谨慎。查看HTML编码文本

默认启用请求验证。你可以使用web.config:

关闭所有页面
<configuration> 
      <system.web> 
           <pages validateRequest="false" /> 
      </system.web> 
</configuration>

或者只在该页上通过将其添加到指令:

<%@ Page validateRequest="false" %> 

如果您仍然希望页面请求验证正常运行(即不将其设置为false),您可以始终替换字符<,

在处理用户的HTML/XML输入时,您必须非常小心,并确保彻底清理了输入。

不同的web控件默认实现(或不实现)html lencoding。看看Which ASP。. NET控件自动编码?查看详细列表。

我还建议你看看微软的Anti-Cross Site Scripting Library。

你能编辑你的问题并发布一些代码(也许是导致错误的样本输入)?<>可能是原因,但也可能是转移注意力。

相关内容

  • 没有找到相关文章

最新更新