当前位置: 代码迷 >> ASP.NET >> 有个很奇怪的有关问题,IIS发布了webservices,如果提交的内容有特殊字符则直接404异常
  详细解决方案

有个很奇怪的有关问题,IIS发布了webservices,如果提交的内容有特殊字符则直接404异常

热度:6652   发布时间:2013-02-25 00:00:00.0
有个很奇怪的问题,IIS发布了webservices,如果提交的内容有特殊字符则直接404错误
iis6.0发布的webservices,如果提交的内容有特殊字符则页面直接错误,无法调用
但是在大部分情况下,调用webservices又不报错。

这是为什么?

安全限制?

------解决方案--------------------------------------------------------
如果又特殊字符的话,会破坏参数传递的正确格式,这个时候肯定是要报错的。
 data: "{snbid:'" + snbid + "',sFlow:'" + sFlow + "'}", 想这样,你如果snbid这个参数有单引号或者双引号,是肯定要报错的。所以这个时候一般要先将参数编码,然后后台解码。

我一般是像下面这样处理的
前台编码: var sName = escape($("#txt_JoinName").val());
后台解码: HttpContext.Current.Server.UrlDecode(sName);
------解决方案--------------------------------------------------------
webservice
当参数不符合要求的时候 点击调用的时候就会出现 404错误(当设置了错误配置的时候 你也可以把这个配置取消掉 然后看看是啥具体的错误).