【发布时间】:2011-07-28 05:15:43
【问题描述】:
我们有一个在 MOSS 2007 上运行的站点,它从客户端调用同一域上的自定义 Web 服务 asmx 方法。
在实时站点上,请求被重定向到以下网址:
http://[domain]/_layouts/error.aspx?ErrorText=请求格式无法识别,因为 URL 意外以 %27%2FIsSuspectWaterLevel%27 结尾。
我们在网站 web.config 中添加了以下内容,没有任何乐趣:
<system.web>
<webServices>
<protocols>
<add name="HttpSoap" />
<add name="HttpGet" />
<add name="HttpPost" />
</protocols>
</webServices>
...
</system.web>
有趣的是,我们在测试服务器上没有这个问题,它应该与实时服务器完全相同。
对这里可能存在的其他变量有什么想法吗?
提前感谢您的任何想法, 加文
更新:
打电话时
http://[Domain]/_vti_bin/Custom/CustomFunctionality.asmx/IsSuspectWaterLevel
失败,我仍然可以访问
http://[Domain]/_vti_bin/Custom/CustomFunctionality.asmx?op=IsSuspectWaterLevel
虽然当我以同样的方式调用该方法时它失败了。
我想知道这是否有助于进一步阐明这个问题?
另一个更新:
我刚刚在开发服务器上观察到了同样的错误。从 GAC 中删除应用程序 dll,然后重新复制它解决了这个问题。实时服务器在初始部署时测试良好,所以也许 Sharepoint 会随着时间的推移失去一些参考?抓着稻草是非常令人困惑的行为!
又一次更新:
似乎每次我在 12 Hives 中触摸(打开并保存)web.config 文件时,问题都会再次修复一段时间,但一段时间后问题又出现了。不知道是不是和app pool被回收有关系?
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\12\ISAPI\web.config
【问题讨论】:
标签: web-services sharepoint-2007