2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ASP.NET Webサービスの隠し仕様:制御文字を含んだ文字列は(エンコードされていても)パースエラーになる

Posted at

ASP.NET 3.5で引っかかったまさかの障害。

ローカルネットワーク向けのSOAP Webサービスへのアクセスがなぜか400 Bad Requestで失敗するという障害が起きていました。クライアント側も.NET FrameworkのWeb参照クライアントライブラリなので、SOAPリクエストが形式異常なんてことはないはず。その後のリトライもすべて失敗しているので偶発的な誤動作というものでもなさそう。
一体何が起こった?

答はタイトルの通り、SOAPリクエストの引数として文字列に制御文字が含まれていたことでした。
それも、クライアントライブラリ側はきっちりエンコード(実体参照化)してくれていたにもかかわらず、それが制御コードであればサーバ側は400 Bad Requestを返すのでした。
フレームワークのバグっぽい動きですねこれは。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?