为什么我在维基百科 api 上收到错误消息?

Why do I get error message on wikipedia api?

有人能告诉我这段代码有什么问题吗?

    $.ajax({
  "url":"https://en.wikipedia.org/w/api.php?",
  "dataType": "jsonp",
    "action": "opensearch",
    "format": "json",
    "search": "new york",
    "namespace": "0",
    "limit": "3",
    "formatversion": "1",

  success: function(response){
    console.log(response);
  }
});

为什么我会收到以下错误消息?

拒绝执行来自“https://en.wikipedia.org/w/api.php?&callback=jQuery111105448874468459555_1518288921946&_=1518288921947”的脚本,因为它的 MIME 类型 ('text/html') 不可执行,并且启用了严格的 MIME 类型检查。

谢谢。

以下不是 ajax 参数(而是 api 参数):

"action": "opensearch",
"format": "json",
"search": "new york",
"namespace": "0",
"limit": "3",
"formatversion": "1",

您可以将这些值作为查询字符串传递,将您的 url 更改为:

"url":"https://en.wikipedia.org/w/api.php?",

至:

"url":"https://en.wikipedia.org/w/api.php?"+ $.param(apiParams),

其中 api 参数为:

var apiParams = {action: 'opensearch', search: 'new york', limit: 3, namespace: 0, formatversion: 1, format: 'json'};

或者您可以使用如下数据参数:

data: apiParams,

片段:

var apiParams = {action: 'opensearch', search: 'new york', limit: 3, namespace: 0, formatversion: 1, format: 'json'};
$.ajax({
    "url":"https://en.wikipedia.org/w/api.php?" + $.param(apiParams),
    "dataType": "jsonp",
    //data: apiParams,
    success: function(response){
        console.log(JSON.stringify(response));
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>