Web services Sharepoint拒绝访问asmx方法

Web services Sharepoint拒绝访问asmx方法,web-services,sharepoint-2007,Web Services,Sharepoint 2007,我们有一个运行在MOSS 2007上的站点,它从客户端调用同一域上的自定义web服务asmx方法 在实时站点上,请求被重定向到以下url: http://[domain]/\u layouts/error.aspx?ErrorText=无法识别意外以%27%2fisspectwaterlevel%27结尾的URL的请求格式 我们在网站web.config中添加了以下内容: <system.web> <webServices> <protoco

我们有一个运行在MOSS 2007上的站点,它从客户端调用同一域上的自定义web服务asmx方法

在实时站点上,请求被重定向到以下url:

http://[domain]/\u layouts/error.aspx?ErrorText=无法识别意外以%27%2fisspectwaterlevel%27结尾的URL的请求格式

我们在网站web.config中添加了以下内容:

  <system.web>
    <webServices>
      <protocols>
        <add name="HttpSoap" />
        <add name="HttpGet" />
        <add name="HttpPost" />
      </protocols>
    </webServices>
  ...
  </system.web>

...
有趣的是,我们在测试服务器上没有这个问题,测试服务器应该与实时服务器完全相同

你知道还有什么其他变量在起作用吗

提前感谢您的建议, 加文

更新:

当我打电话给

http://[Domain]/\u vti\u bin/Custom/CustomFunctionality.asmx/isspectwaterlevel

如果失败,我仍然可以访问

http://[Domain]/\u vti\u bin/Custom/CustomFunctionality.asmx?op=IsSuspectWaterLevel

虽然当我以同样的方式调用该方法时失败了

我想知道这是否有助于进一步阐明这个问题

另一个更新:

我刚刚在dev服务器上发现了相同的错误。从GAC中删除应用程序dll,然后在中重新复制,解决了此问题。实时服务器在初始部署时测试良好,因此Sharepoint可能会随着时间的推移失去一些参考?抓救命稻草是非常令人困惑的行为

另一个更新:

似乎每次我在12个配置单元中触摸(打开并保存)web.config文件时,问题都会在一段时间内再次得到修复,但过了一段时间,问题又出现了。我想知道这是否与应用程序池被回收有关


C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12\ISAPI\Web.config

解决这个问题的一个不雅观的方法对我们来说很有效:我们已经将Web服务asmx端点替换为Web处理程序ashx端点。出于某种原因,这不会遇到同样的问题

我猜想,经过一段时间后,出现了一些问题,导致URL解析错误。我怀疑url中.asmx之后的/是curprit。实现的ashx端点只处理url参数和发布的数据

显然,对于其他可能遇到同样问题的人来说,这种解决方法并不总是一种选择,因为我们正在失去许多预先烘焙到asmx端点的富web服务功能

不幸的是,我无法测试人们从现在起可能提出的任何其他解决方案,因为我们已经离开了web服务asmx方法。对不起