c# - WCF:远程服务器返回错误:(413)请求实体太大

标签 c# asp.net web-services wcf web-config

<分区>

我有一个wcf服务

有一种获取base64字符串来上传文件的方法,我的文件大小为100kb,时间可能会更大

我收到错误消息:远程服务器返回错误:(413) 请求实体太大 同时尝试获取 HttpWebResponse

这是我的 wcf 服务 web.config

<system.serviceModel>
<bindings>
  
  <webHttpBinding>
    
    <binding name="webHttpTransportSecurity" allowCookies="false" maxReceivedMessageSize="104857600">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647"
       maxBytesPerRead="2147483647" />
      <security mode="Transport">
        <transport clientCredentialType="None" />
      </security>
    </binding>
  </webHttpBinding>
</bindings>
<services>
  <service name="FHServices.FHSmartService" behaviorConfiguration="ServiceBehaviour">
    
    <endpoint address="" binding="webHttpBinding" contract="FieldHoundServices.IFHSmartService" behaviorConfiguration="web">
    </endpoint>
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost/FHServices/FHSmartService.svc/" />
      </baseAddresses>
    </host>
  </service>
</services>
<behaviors>
  <serviceBehaviors>
    <behavior name="ServiceBehaviour">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
    </behavior>
  </serviceBehaviors>
  <endpointBehaviors>
    <behavior name="web">
      <webHttp />
    </behavior>
  </endpointBehaviors>
</behaviors>
 <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>

我的错误是什么?


已解决

我发现了我的错误 我删除了这些代码

<security mode="Transport">
    <transport clientCredentialType="None" />
  </security>

我认为 https 的传输模式,我们没有 ssl,所以我们不需要传输模式。无论如何,在我删除它之后,现在一切似乎都正常了

最佳答案

您没有分配已定义的 WebHttpBinding配置到您的端点,因此端点使用绑定(bind)的默认值。

您可以通过在 bindingConfiguration 中指定它来告诉端点使用您的绑定(bind)配置。 <endpoint> 上的属性元素,像这样:

<endpoint address="" binding="webHttpBinding"
          bindingConfiguration="webHttpTransportSecurity"
          contract="FieldHoundServices.IFHSmartService" 
          behaviorConfiguration="web">
</endpoint>

关于c# - WCF:远程服务器返回错误:(413)请求实体太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24009527/

相关文章:

c# - C#中的抽象类构造函数

c# - MethodBase.GetCurrentMethod()反射线解释

c# - 调试 .Net 网络 API

asp.net - 如何避免 ASP.NET 中的快速页面刷新?

c# - 用于动态 View 数据/表单的 ASP.Net MVC 编辑器模板

android - authTokenType 到底是什么意思?

c# - 异步等待不起作用。为什么?

web-services - openid4java ConsumerManager 请求/线程安全吗?

c# - 如何获取从 web 服务请求返回的原始 xml?

c# - WebClient UploadData 在发布带有扩展 ascii 字符的 json 数据时出现 400 Bad Request 错误