[解決済み] ASP.NET Web APIが常にJSONを返すように強制するには?
2022-11-25 06:51:15
質問
ASP.NET Web APIはデフォルトでコンテント・ネゴシエーションを行います - XMLまたはJSON、あるいは
Accept
ヘッダに基づいて XML または JSON または他のタイプを返します。私はこれを必要としませんが、常にJSONを返すようにWeb APIに指示する方法(属性か何か)はありますか?
どのように解決するのですか?
ASP.NET Web API で JSON のみをサポートする-。 正しい方法
IContentNegotiatorをJsonContentNegotiatorに置き換える。
var jsonFormatter = new JsonMediaTypeFormatter();
//optional: set serializer settings here
config.Services.Replace(typeof(IContentNegotiator), new JsonContentNegotiator(jsonFormatter));
JsonContentNegotiatorの実装です。
public class JsonContentNegotiator : IContentNegotiator
{
private readonly JsonMediaTypeFormatter _jsonFormatter;
public JsonContentNegotiator(JsonMediaTypeFormatter formatter)
{
_jsonFormatter = formatter;
}
public ContentNegotiationResult Negotiate(
Type type,
HttpRequestMessage request,
IEnumerable<MediaTypeFormatter> formatters)
{
return new ContentNegotiationResult(
_jsonFormatter,
new MediaTypeHeaderValue("application/json"));
}
}
関連
-
[解決済み] クライアントから危険な可能性のあるRequest.Formの値が検出された
-
[解決済み] Chromeを使用してASP.NET Web APIがXMLの代わりにJSONを返すようにするにはどうすればよいですか?
-
[解決済み] ASP.NET MVC - カスタムIIdentityまたはIPrincipalの設定
-
[解決済み] Web API メソッドに json の POST データをオブジェクトとして渡すにはどうすればよいですか?
-
[解決済み】ASP.NET Web APIでコントローラからバイナリファイルを返す。
-
[解決済み】ASP.NET MVC 3 razor ViewStart ファイルで異なるレイアウトを指定するには?
-
[解決済み】Web Api コントローラから http ステータスコードを返す。
-
[解決済み】MVC 4 @Scripts "does not exist".
-
[解決済み] 型名または名前空間名 'DbContext' が見つかりませんでした [閉鎖]。
-
[解決済み] ASP.NET Web APIがプレーンテキストを返すように強制する方法はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】VS 2015でコントローラからビューを追加できない : "選択されたコードジェネレータの実行にエラーが発生しました"
-
[解決済み] glyphicons-halflings-regular.woff2 not foundに関するエラーを削除する方法
-
[解決済み] Kendo UI MVC用パスワードテキストボックス
-
[解決済み] JsonResultが特殊文字(apostrophe)を \u0027 としてパースしています。
-
[解決済み] ASP.NET MVCアプリケーションで、デバッグ用の起動ページを設定するにはどうすればよいですか?
-
[解決済み] ASP.NET MVC ビューエンジンの比較
-
[解決済み] Html.ActionLinkをリンクではなく、ボタンや画像にする
-
[解決済み】サービスは常にDTOを返すべきですか、それともドメインモデルも返すことができますか?
-
[解決済み】Html.ActionLinkを使用して別のコントローラのアクションを呼び出す
-
[解決済み] JSON.NETを使ったシリアライズフィールドの並び順