我第一次偶然发现了一个问题,即解决方案尚未完全提供给SO,但我希望有人可以提供帮助。
我的问题类似于PUT and DELETE in RESTful WCF Service cause 401 Unauthorized error。
也就是说,我有一个WCF数据服务,每当我尝试进行更新或删除时,我都会获得401(阅读和发布工作没有任何问题)。与上述帖子的不同之处在于,我不是在IIS中托管我的服务,而是在Windows Azure上,因此我无法应用该解决方案。
我在.NET客户端和使用OData扩展的restlet客户端上遇到了同样的问题(401: invalid credentials when attempting updates or deletes
)。但是,在.NET客户端上,我可以通过设置UsePostTunneling = true来解决此问题。
在我的服务中,我设置了config.SetEntitySetAccessRule("*", EntitySetRights.All)
。
有谁知道如何解决我的restlet客户端的问题?
答案 0 :(得分:0)
我要检查的第一件事是看你的处理程序是否启用了PUT和DELETE谓词。您是从完整IIS中的Web角色运行此操作还是使用Hosted Web Core(HWC)或其他?通常,超过401,我看到405错误,因为WebDAV在机器上,PUT和DELETE动词在那里发生冲突。您最终必须为应用程序禁用WebDAV。
我还会在你的web.config中检查你的身份验证方法。我已经看到'none'类型导致问题,所以将其更改为Forms。