如何使用Wikipedia API搜索用户输入的值?

Ada*_*dam 2 html ajax jquery json

我是编程和 Web 开发新手,所以我不知道如何使用正确的 Ajax/JSON。我正在使用 HTML 和 jQuery。我创建了文本输入字段,下面有一个提交按钮,我希望我的页面搜索此输入字段中的值并返回结果。

我找到了这个 jQuery 代码来做到这一点,但我不明白 url 的格式。

$("#search").click(function(){

    var searchTerm = $("#searchTerm").val();// value entered by the user
    var url = "https://en.wikipedia.org/w/api.php?action=opensearch&search="+ searchTerm + "&format=json&callback=?"; // url to look for using the search input by the user

    $.ajax({
        type:"GET",
        url:url,
        async:true,
        dataType: "json",
        success:function(data){
            console.log(data[1][0]);
            console.log(data[2][0]);
            console.log(data[3][0]);
        },

        error: function(errorMessage){alert("Error");}
    });
});
Run Code Online (Sandbox Code Playgroud)

输入字段是这样的:

<input class="form-control" id="searchTerm">
<button id="search" type="button" class="btn btn-primary">Submit</button>
Run Code Online (Sandbox Code Playgroud)

Chi*_*tan 5

关于 Wikipedia API 有一些事情需要了解。

考虑您共享的网址:

var url = "https://en.wikipedia.org/w/api.php?action=opensearch&search="+ searchTerm + "&format=json&callback=?";
Run Code Online (Sandbox Code Playgroud)

API URL 中有两部分。

  1. API 入口点:https://en.wikipedia.org/w/api.php - 这是您进行所有 API 调用的 URL,即它是所有 API 调用通用的部分。
  2. 参数:URL 的其余部分是参数。在参数中,您可以指定您想要从 API 调用中获得什么。我解释一下下面的一些参数:

actionaction参数:维基百科 API 中有许多可用的参数。action=query参数用于获取有关维基百科文章的信息。另一个常见的操作参数是action=opensearch用于搜索维基百科 - 也位于上面的 URL 中。要了解有关 Action 参数的更多信息,请转到此处

每个action参数还可以有其自己的子参数。例如search上面url中使用的参数。它告诉 API 要搜索什么术语。

format参数告诉您想要结果的格式。虽然通常是这样jsonphpxml也支持但不推荐使用。更多相关内容请参见此处

callback=?可能已添加到您的查询中以触发 JSONP 响应,以避免违反同源策略。有关 Wikipedia API 的跨站点请求的更多信息,请参见此处

`