1

ブラウザ(IE、Chrome)から返されるWCF rest \ webHttpBindingサービスがあります:

Bad Request - Invalid URL - 
HTTP Error 400. The request URL is invalid.

このサービスはGETを使用し(おそらくPOSTに変更する必要がありますが、元々は最大URLが50文字になると言われていました)、問題が何であるかについて興味があります...私自身の心の一部です。

以前は300文字を超えるURLでこの問題が発生したため、Web構成で以下のようにmaxUrlLengthを設定しました。

  <system.web>
    <compilation targetFramework="4.0" />
    <httpRuntime maxUrlLength ="5000" maxQueryStringLength="2048" />
  </system.web>

これは、この更新を行ったときに機能していましたが、現在は機能していないようです。300を超えると、400エラーが発生します。

現在、他の何かがリクエストをブロックしていると思います。このb/cは、以前は独自のログファイルとwcfの「diagnostics」ログファイルに情報があったと言っています。今ではどちらも書かれていません...そのようなサービスは関与していません。以前は、サーバー自体でサービスをヒットすると、このエラーが発生していました

The length of the URL for this request exceeds 
 the configured maxUrlLength value.

しかし、私はもはやそのエラーを受け取りません。

私たちはサーバーを「所有」していません。つまり、他の誰かが管理者であり、通知なしに以前にサーバーの状況が変更されています。

私はSOを見回していますが、最も言及されているのは診断の設定です。IIS用のHttp.sysレジストリ設定がありました。これはhttp://social.msdn.microsoft.comから取得したものですが、何も関係がないようです。また、セクションを追加しますが、私は十分に良いはずだと信じています(SOの回答によると)

何が起こっているのか考えてみませんか?

ありがとう!

.net 4.0、iis 7、Windows Server 2008

編集:追加するには、maxUrlLengthを50などの小さなものに更新し、50を超えるURLを使用すると失敗しますが、「このリクエストのURLの長さが構成されたmaxUrlLength値を超えています」と失敗します。メッセージ。そのため、WCFサービスに到達する前に、何か別のことが問題の原因になっていると感じています。

4

2 に答える 2

1

私はこれと同じ問題を抱えていましたが、この回答のおかげで、以下を追加することで解決できました。

<system.web>
  <httpRuntime maxUrlLength="500" />
</system.web>
于 2015-08-27T12:46:12.933 に答える