(405)方法不允许。 WCF WebService的

问题描述:

简介:(405)方法不允许。 WCF WebService的

您好,我想建立一个WCF Web服务我的本地IIS 7.5服务器上,但是之后我完成我无法用一个WinForms测试客户端发送数据的基本配置,并返回标题中提到的错误。 我已经在这个问题上搜索了类似的线程,但我没有找到任何适合我的问题。

数据:

导向轴的WCF WebService的何从第三方提供

- 他们已经在另一台服务器上的工作,我使用的是同一版本

-I上午的测试客户端可能做一些错误的,当我启用或配置IIS

请求:

- 我需要知道什么IIS功能我甲肾上腺素编辑启用/禁用,以便正确安装它,以便我可以使用Wcf WebService(如果是这种情况)。

- 如何正确配置服务器以解决上述错误。

我的配置:

- 后安装IIS,我改变了DefaulAppPool到.NET框架v4.0.30.319;管道模式:集成。 - 高级设置:加载用户配置文件= False。

- 使用DefaultAppPool.Binding创建了一个名为“WcfMicrocontrollerService”的新网站;类型:http,IP地址:,端口:80

此时我可以通过Web浏览器访问它,但是当我使用测试客户端向服务POST数据时,出现以下错误:“The remote服务器返回了意外的响应:(405)方法不允许。“

这里是发送所记录的提琴手数据包: 发送:收到

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

这似乎表明,我应该看看处理程序映射,但我不知道在那里编辑什么。

好了,所以之后就您的问题非常简短的搜索,我发现了以下问题 WCF on IIS8; *.svc handler mapping doesn't work

忽略的事实,问题是关于IIS 8,你在运行Windows或Windows Server?

如果您使用的是Windows去......

  • 控制面板 - >程序 - >程序和功能>打开Windows功能打开或关闭。在.Net Framework 3.5(包含.NET 2.0和3。0“部分
  • 确保”Windows Communication Foundation HTTP激活“处于打开状态
  • 另请参阅”.NET Framerwork 4.x高级服务“和”WCF服务“下的检查以确保已启用HTTP激活在那里。

这是从这个问题显示了.NET 4.5的变化,使画面。 Features to turn on

如果您使用的是Windows服务器尝试第一个问题的答案就以下如何使用服务器管理器设置角色。

+0

我已经成功地在安装了Windows 10(IIS 10)的另一台计算机上运行Web服务,并在适用情况下提供了您的说明。但是,在Windows 7 SP1中,我只有.Net Framework 3.5选项,并且在启用HTTP激活后出现500.21错误,但我不再陷入困境,应该能够自行解决问题。我看着错误的地方,并从未想到这一点。非常感谢! –

+0

我很高兴这有助于 – simlawstu

+0

这真的有所帮助 - 在Server 2016 Preview 5下运行良好 - 我认为默认安装了几乎所有功能。在完全安装Server 2016标准版之后,这一点让我疯狂起来,大家都知道工作时间表有多紧张:-) – gchq