3

我们有一个位于 [website]/Api/HmlApi.svc/soap 的 Web 服务,它通常可以正常工作。它不是 SSL。

在这个特定站点中,我们可以在浏览器中看到 .svc 页面正常,但尝试访问此服务的客户端应用程序会收到 http 404 错误。未找到端点。

该网站的配置如下。

<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true">
</serviceHostingEnvironment>
<!--Set up the service-->
<services>
  <service behaviorConfiguration="SOAPRESTDemoBehavior" name="HmlApi">        
    <endpoint address="soap" binding="basicHttpBinding" contract="VLSCore2.Interfaces.IHmlApi" />
  </service>
</services>
<!--Define the behaviours-->
<behaviors>
  <serviceBehaviors>
    <behavior name="SOAPRESTDemoBehavior">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
    </behavior>
  </serviceBehaviors>
  <endpointBehaviors>
    <behavior name="SOAPRESTDemoEndpointBehavior">
      <webHttp />
    </behavior>
  </endpointBehaviors>
</behaviors>

网站登录出现如下错误:

/Api/Hmlapi.svc/soap - The controller for path was not found or does not implement IController

对我来说,这表明 url 是正确的——我们正在访问该站点,我们可以访问 svc,但不知何故,它并没有像上面配置中的正常设置那样路由到 soap 端点。

关于为什么在这个网站的情况下它可能不起作用的任何想法?还有什么我们可以检查的吗?

4

1 回答 1

0

确保您已正确配置 WebApi 路由配置。您可能在 Global.asax.cs 中拥有它们,或者如果您在 MVC4 或 MVC5 项目中,则在 App_Start 文件夹 WebApiConfig.cs 中。

如果您正确配置了路由,那么您是否将服务配置放在正确的配置文件中?

问候!

于 2014-01-02T20:13:44.750 回答