2017-05-13 9 views
-1

私はアンドロイドからサーバーにデータを投稿しています.Json形式のWCFサービスを使用しています。すべてがうまくいきます。私は65KB以上のデータを投稿しようとしている間に問題を抱えています。しかし、私がRestクライアントを使用して同じデータを投稿すると、正常に動作しています。アンドロイドからの投稿時に問題を提起しています。400 Bad Request:WCF Restサービスを使用してアンドロイドデバイスから大容量データを(> 65KB)(JSON形式)投稿

バインディングタグのすべてのプロパティをmax値に設定しました。 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

私たちは、あなたがやっているものを見ることができません。それでなぜあなたは私たちが助けることができると思いますか? – greenapps

+0

@greenapps私が提供することを期待しているもの。それはまっすぐな質問です。私はアンドロイドからサーバーに65KB以上のデータを投稿できないということです。 –

答えて

0

を一般的な間違いとして投稿した場合にのみエラーが発生します。おそらくあなたは間違った側にこれを設定しています。あなたが石鹸サービスで65k以上を​​受け取っている場合は、maxReceivedMessageSizeを増やす必要があります。クライアントとサーバーの両方のサイズが増えていることを確認してください。

+0

maxReceivedMessageSize = "2147483647"をすでに設定しましたが、動作していませんでした。それは悪い要求を与えている。 –

+0

でもどちら側ですか?このクライアント側の設定ファイルまたはサーバー側? web.configのサーバー側の – David

+0

。私は質問 –

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> 

関連する問題