为什么.getJSON函数从API返回MIME类型错误

时间:2017-05-14 17:02:04

标签: javascript jquery json

我一直试图从Forismatic API调用,但是当我发送它时它返回MIME类型错误。

JQuery请求:

$(document).ready(function() {

    $("#quote-button").on("click", function(){
       $.getJSON("https://api.forismatic.com/api/1.0/?method=getQuote&format=json&lang=en", function(json) {
  $(".quote-text").html(JSON.stringify(quoteText));
});

  });
 });

错误消息

  

拒绝执行脚本   ' https://api.forismatic.com/api/1.0/?method=getQuote&format=json&lang=en&jsonp=jQuery32104928506782842177_1494780473751&_=1494780473752'   因为它的MIME类型(' application / json')不可执行,并且   启用了严格的MIME类型检查。

我已经考虑过添加callback=?并更改为https而不是http,但他们还没有成功。

1 个答案:

答案 0 :(得分:1)

根据API文档,您需要将格式设置为"jsonp"并设置jsonp参数:

$.getJSON("https://api.forismatic.com/api/1.0/?method=getQuote&format=jsonp&lang=en&jsonp=?", function(json) {
  console.log(json)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>