2017-01-27 2 views
2

私はASP.NET WebAPIアプリケーションを持っており、要求の一部が最大長を超えています。それはいいです、I know I can increase the limit either in IIS or web.config、それは私の言い分ではありません。「要求の最大長を超えたとき」の本文の最初のバイトを読み取る

Request.Content.Readメソッドのいずれかを使用して要求の内容を読み取ると、すべてがMaximum request length exceeded例外を返します。

私はロギングの目的でボディの最初の文字を取得したいと思います。

身体の最初の文字だけを読むことはできますか?それともコンテンツ全体を取り出すことができないのですか?

+5

は、これらの2つのリンクを参照してくださいません。 – Gusman

+0

ファイルをアップロードしていますか?ファイルアップロードを処理するHttpModuleを実装できますか?ここにそれに関する詳細があります:https://weblogs.asp.net/jongalloway/large-file-uploads-in-asp-net – felipekm

+0

@felipekmアプリケーションの予想される形式はjsonですが、アイデアは私がしたいことです取得したリクエストの最初の文字/バイトを確認して、私たちが受け取ったものを理解することができます。これは社内のAPIで、API間の通信問題のデバッグに役立ちます。 –

答えて

1

あなたはglobal.asaxファイルで例外をキャッチしなければなりません、そして、あなたは要求データを持っています。 IISは、それが許さ最大長より大きいかどうコンテンツサイズが読んで停止します受信したときにNO」それは、possileいない

Catching "Maximum request length exceeded" http://geekswithblogs.net/sglima/archive/2011/09/20/how-to-handle-maximum-request-length-exceeded-exception.aspx

+0

外部リソースへのリンクのみで回答を提供すべきではありません。なぜなら、リソースがもはや利用できなくなると、この回答は役に立たなくなるからです。答えには最小限の例を追加してください。 [あなたの答えは他の城にあります](http://meta.stackexchange.com/questions/225370/your-answer-is-in-another-castle-when-is-an-answer-not-an-answer)を参照してください。 ) –

関連する問題