2017-08-09 3 views
0

JavaサーバーがApache CXF 3.1.10を使用してRESTサービスを公開しています。 8Kより長いURLでGETサービスを呼び出そうとすると、サービスにエラーが発生します。サービス停止要求(> 8KB)が失敗する

RESTサーバーは、Jettyサーバーを起動するJAXRSServerFactoryBeanを使用します。私は、サーバーが8K以上の要求を受け入れる方法を見つけることができません。

答えて

0

Get要求には、クライアント側とサーバー側の両方でクエリサイズの制限があります。 (詳細はmaximum length of HTTP GET request?をご確認ください)

多分、POSTサービスに移行する必要があります。または、クライアントとサーバーの両方を制御する場合は、要求本体を使用できます。 (GET要求は許可されていますが、それをサポートしていないクライアント/サーバがあります)

+0

あなたの提案に感謝しますが、失敗したサービスがデータリクエスト(https:// www .w3schools.com/TAGs/ref_httpmethods.asp) –

+0

実際には正確に真実ではありません。 GET要求はデータを返すことが予想されるため、副作用は発生しません。しかし、POSTリクエストはデータを更新するかもしれません。彼らはそれを強制されません。 POSTは複数の理由でデータを取得するために使用される可能性があります。その1つは送信されるデータが大きすぎてURL文字列に収まらないためです。 – xycf7

関連する問題