介绍:
您好,我正在尝试在本地 IIS 7.5 服务器上设置 WCF Web 服务,但是在完成基本配置后,我无法使用 WinForms 测试客户端发送数据,并且它返回标题中提到的错误。
我已经搜索过有关此问题的类似线程,但没有找到任何适合我的问题的内容。
Data:
- Wcf WebService 和测试客户端均由第三方提供
-他们已经在另一台服务器上工作,我正在使用相同的版本
- 当我启用或配置 IIS 时,我可能做错了什么
Request:
-我需要知道需要启用/禁用哪些 IIS 功能才能正确安装它,以便我可以使用 Wcf WebService。(如果是这样的话)。
- 如何正确配置服务器以解决上述错误。
我的配置:
-安装 IIS 后,我将 DefaulAppPool 更改为 .NET Framework v4.0.30.319;管道模式:集成。 - 高级设置:加载用户配置文件 = False。
-使用 DefaultAppPool.Binding 创建了一个名为“WcfMicrocontrollerService”的新网站;类型:http,IP地址:,端口:80
此时,我可以通过 Web 浏览器访问它,但是当我使用测试客户端将数据 POST 到服务时,出现以下错误:“远程服务器返回意外响应:(405) 不允许方法。”
以下是Fiddler记录的发送数据包:
发送:
POST http://192.168.0.102/MicroControllerComSvc.svc HTTP/1.1
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://tempuri.org/IMicroControllerComSvc/GetMicrocontrollerData"
Host: 192.168.0.102
Content-Length: 237
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><GetMicrocontrollerData xmlns="http://tempuri.org/"><microControllerData>1,1,1,1,2,2,1,0,100,300</microControllerData></GetMicrocontrollerData></s:Body></s:Envelope>
已收到:
HTTP/1.1 405 Method Not Allowed
Cache-Control: private
Allow: GET, HEAD, OPTIONS, TRACE
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Tue, 01 Mar 2016 10:44:44 GMT
Content-Length: 5671
这是正文:https://dl.dropboxusercontent.com/u/2237590/405.html https://dl.dropboxusercontent.com/u/2237590/405.html
这似乎表明我应该查看处理程序映射,但我不知道在那里编辑什么。