2017-01-04 12 views
0

私は、Webサービスの文字セットを経路値、クエリパラメータ、およびjson本体の内容をlatin1に制限しなければならない状況にあります。パラメータバインドの文字セットを制限する方法は?

私はecontent交渉担当者と一緒に遊んだことがありますが、それは応答書式設定用です。

メディアフォーマッタのサポートされているエンコーディングを、予期しない文字をスローするもので置き換えようとしましたが、例えばJsonMediaTypeFormatterがReadFromStream呼び出しを行うと、effectiveEncodingパラメータは既にlatin1であり、文字列はすでに文字化けしています(私はいくつかの中国語の文字でしようとしています)。

私が実際にやりたいことは、誤ったエンコーディングが指定されたとき、または非latin1文字が表示されたときに何らかのBadRequest結果を作成することです。

誰でも私に正しい場所を見つけ出すためのヒントを教えてもらえますか? DelegatingHandlerですべて "手動で"行うよりも良い方法があるはずです。

答えて

0

最後に、メディアフォーマッタをオブジェクトに逆シリアル化する前にEncoding.GetBytes(...)を使用して文字列を検証するものに置き換えました。

関連する問題