【问题标题】:How to give option whether clients want json response or jsonp based on web api request如何根据 Web api 请求提供客户端是否需要 json 响应或 jsonp 的选项
【发布时间】:2015-06-08 09:59:57
【问题描述】:

我已经开发了一个 web api,我已经实现了类似 jsonp 的母校

 var jsonpFormatter =
                new JsonpMediaTypeFormatter(formatters.JsonFormatter);
 formatters.Insert(0, jsonpFormatter);

我可以使用下面提到的请求使用 jsonp 来使用它

 $.ajax({
            type: 'GET',
            url: "http://localhost:61734/api/baseapi",
            callback: 'returnCallBack',
            contentType: "application/json",
            dataType: 'jsonp'
        });

我的问题是如何让我们的 api 可以根据请求识别响应应该是 json 还是 jsonp。任何人都可以根据我的请求帮助我想要的 API 给我 json 或 jsonp 响应。

【问题讨论】:

    标签: json asp.net-web-api jsonp


    【解决方案1】:

    有几个 nuget 包可以为您执行此操作,因此您不必重新发明轮子。例如。 WebApiContrib.Formatting.JsonP

    如果您不想使用另一个库,那么他们所做的基础是创建一个新的 MediaTypeFormatter,它将检查对回调参数的请求,指示它是 JsonP,并使用“Callbackname”包装序列化响应(" + json + ");"

    【讨论】:

      猜你喜欢
      • 2015-10-09
      • 2012-11-06
      • 2021-04-24
      • 2018-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-29
      • 1970-01-01
      相关资源
      最近更新 更多