我使用json格式的WCF服务将数据从android发布到服务器。一切都很好。我尝试发布超过65KB的数据时遇到问题。但是当我使用Rest客户端发布相同的数据时它工作正常。从android发布时会出现问题。
我已将绑定标记中的所有属性设置为最大值。和reqderquotas标签中的相同。以下是我的网络配置设置
<bindings>
<webHttpBinding>
<binding maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" sendTimeout="00:20:00" receiveTimeout="00:20:00" openTimeout="00:20:00" closeTimeout="00:20:00">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</binding>
</webHttpBinding>
</bindings>
请让我知道我做错了什么。因为我使用相同的服务和相同的Web配置设置发布超过300KB的文件。发布json时只会出错。
答案 0 :(得分:0)
这是一个常见的错误。可能你是在错误的一面。如果你接受超过65k的肥皂服务,你必须增加maxReceivedMessageSize
。现在确保您的客户端和服务器大小都增加了。
答案 1 :(得分:0)
错误请求是因为无效的UTF-8字符而不是因为大数据。我使用了以下来诊断WCF服务。
<system.diagnostics>
<sources>
<source name="System.ServiceModel"
switchValue="Information, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="traceListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData= "c:\log\Traces.svclog" />
</listeners>
</source>
</sources>