我有一个在我的开发系统上运行良好的WCF数据服务。但是,当我将其部署到客户端的Web服务器时,插入,更新和删除都失败了。更新失败,“401 - 未经授权:由于凭据无效,访问被拒绝。”这似乎是一个集成的身份验证问题。我在StackOverflow上找到了一个解决方法,涉及在我的.svc文件上为“Authenticated Users”设置完全权限,现在更新工作。我还找到了Zoiner Tejada的WCF数据服务博客,该博客解释了处理这个问题的正确方法。
但插入和删除仍然无法正常工作。我收到“405 - 不允许使用用于访问此页面的HTTP动词。”正如Fiddler所证实的那样,动词是PUT和DELETE。
我将该服务部署为我网站下的应用程序。应用程序池是“ASP.NET v4.0”,管道模式是集成的。
以下是我对映射动词的了解。在IIS管理器中,我右键单击该应用程序,然后单击处理程序映射,我发现为路径* .svc注册了“svc-Integrated-4.0”。当我单击“编辑”,然后单击“请求限制”,然后单击“动词”时,将选中“所有动词”。 我被困 - 我怎么能让它发挥作用?
答案 0 :(得分:0)
解决方法:将DataServiceContext.UsePostTunneling
属性设置为true。