WCF服务:只有一个函数的错误请求

时间:2014-03-19 21:59:48

标签: .net wcf rest service

我编写了一个在我的IDE中运行良好的WCF Web服务。现在我已经构建了一个设置并将其安装在我们的Web服务器上,并且由于配置的HTTP到HTTPS重定向而出现了一些问题。在我的web.config中进行了一些更改之后,我将服务保持在运行状态,并且调用函数也能正常工作。例如,/ Customers / GetAll返回一个客户对象列表,以JSON序列化,对于/ Customer / name = XYZ,它返回一个对象,具体取决于客户的名称。

现在我的问题(;)抱歉VB.Net):

   <OperationContract()> _
   <WebGet(ResponseFormat:=WebMessageFormat.Json, UriTemplate:="User/Get/value={pValue}&identifier={pSearchIdentifier}")> _
   Function GetUser(ByVal pValue As String, pSearchIdentifier As String) As LMEngine.User

仅返回&#34;错误请求&#34;没有别的。我还为此函数添加了一些日志记录行。如果我在本地运行该服务,我的所有日​​志行都将写入我的文件 - 在我们的网络服务器上,没有任何反应。

我想我的web.config中有些东西,但我真的不知道要改变什么。 如果有任何错误,请检查配置吗?

  <system.serviceModel>
      <services>
         <service behaviorConfiguration="LogMeWebServiceRest.Service1Behavior" name="LogMeWebServiceRest.LogMe">
            <!--WCF Test Client-->
            <!--<endpoint address="" binding="wsHttpBinding" contract="LogMeWebServiceRest.ILogMe">
          <identity>
            <dns value="localhost"/>
          </identity>
        </endpoint>
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>-->
            <!-- For testing in Browser -->
            <endpoint address="" binding="webHttpBinding" contract="LogMeWebServiceRest.ILogMe" bindingConfiguration="LogMeEndpointBinding" behaviorConfiguration="webBehavior" />
         </service>
      </services>
      <bindings>
         <webHttpBinding>
            <binding name="LogMeEndpointBinding">
               <security mode="Transport">
               </security>
            </binding>
         </webHttpBinding>
      </bindings>
      <behaviors>
         <serviceBehaviors>
            <behavior name="LogMeWebServiceRest.Service1Behavior">
               <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
               <serviceMetadata httpsGetEnabled="true"/>
               <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
               <serviceDebug includeExceptionDetailInFaults="true"/>
            </behavior>
         </serviceBehaviors>
         <endpointBehaviors>
            <behavior name="webBehavior">
               <webHttp/>
            </behavior>
         </endpointBehaviors>
      </behaviors>
   </system.serviceModel>

谢谢!

1 个答案:

答案 0 :(得分:0)

这可能与网址有关。在webserver中,可能是调用不同的方法,这就是为什么它没有记录任何东西。 只是为了排除故障,尝试将uritemplate更改为UriTemplate:=&#34; User5 / Get5 /.."