我有一个带有多个端点的WCF服务,可以从AJAX / JS调用它。一切正常,除非我进入日志表。 我将对该wcf服务的每次调用存储在一个表中,并且我注意到,如果用于调用方法的动词是PUT或DELETE,则该方法被调用两次。当然,它对数据没有影响,因为PUT和DELETE应该是幂等的(我做了相应的存储过程就这样了。)
解决了这个问题,我将PUT更改为POST的一种方法,然后只调用了一次。将其更改回PUT,并再次调用了两次。因此,它与DataContracts无关,正如我在另一篇文章中所读到的那样。我使用了SVCTraceViewer,没有任何意外出现,除了两次调用。 我还必须补充一点 1)未安装WebDav Publishing 2)我已经检查了IIS,并且svc处理程序已授权所有动词 尽管如此,我越来越相信这是一个IIS问题,但是我不知道在哪里看。 任何的建议都受欢迎。 感谢您花费大量时间阅读这篇文章...并为我的问题提供解决方案。
答案 0 :(得分:0)
确定,找到了。以为我会发布答案:我正在使用响应状态代码204来放置和删除成功的请求。但是,似乎代码204要求页面保留并实际上再次请求相同的url。将其更改为202:问题已解决。 问候o。