おそらくばかげた質問ですが、jsonp サポートを webapi アプリに追加しようとしています。この行を webapiconfig.cs に追加しましたが、jsonpmediatypeformatter コンストラクターには 2 つの引数が必要なため、失敗しています。
public static void Register(HttpConfiguration configuration)
{
configuration.Routes.MapHttpRoute("API Default", "api/v1/{controller}/{id}",
new { id = RouteParameter.Optional });
var appXmlType = configuration.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == "application/xml");
configuration.Formatters.XmlFormatter.SupportedMediaTypes.Remove(appXmlType);
**configuration.Formatters.Insert(0, new JsonpMediaTypeFormatter();**
}
最初のものはタイプ mediatypeformatter のようですが、私にはあまり意味がありません。私は試した:
configuration.Formatters.Insert(0, new JsonpMediaTypeFormatter(new JsonMediaTypeFormatter(),"jsonp"));
これは、jsonp という関数で応答を正しくラップしますが、標準の json 応答も壊します。
何か案は?