我有一个WCF REST服务在本地运行在用VS2008 (3.5)编写的IIS6下。
svc文件的asp.net ISAPI映射配置为接受我已启用通配符脚本映射的所有谓词,以允许无扩展URI通过url重写与服务一起工作。
因此,使用指定的.svc文件运行到rest服务的PUT可以正常工作。对省略的svc执行相同的操作将返回405。
i.e
http://thehost/therestmethod = 405 http://thehost/theservice.svc/therestmethod = 200
所有的url编写的版本都与PUT是唯一的例外!当尝试放在无扩展版本上时,我点击了url rewrite ok,但之后出错,所以我知道重写成功了。
我尝试使用WCF跟踪,但没有记录错误。它似乎还没有走到那一步?!?!
发布于 2011-11-12 00:29:09
摘自here
HTTP谓词:虽然大多数防火墙和web客户端允许HTTP GET和POST谓词,但其中一些不支持PUT、DELETE和其他谓词。要启用这种不受支持的谓词的调用,通常的做法是在POST请求上使用X- HTTP - method -Override HTTP头来指定要调用的方法。XHttpMethodOverride示例介绍如何实现此功能。
我想在IIS url重写/允许的动词检查代码中有一些地方不太对齐。
希望这能有所帮助。
https://stackoverflow.com/questions/8096892
复制相似问题