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

时间:2016-05-15 12:15:12

标签: jquery html json ajax

我是编程和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");}
    });
});

输入字段如下:

<input class="form-control" id="searchTerm">
<button id="search" type="button" class="btn btn-primary">Submit</button>

1 个答案:

答案 0 :(得分:4)

有关维基百科API的一些信息。

考虑您分享的网址:

var url = "https://en.wikipedia.org/w/api.php?action=opensearch&search="+ searchTerm + "&format=json&callback=?";

API网址分为两部分。

  1. API入口点:https://en.wikipedia.org/w/api.php - 这是 您进行所有API调用的URL,即它是部分 所有API调用都是通用的。
  2. 参数:URL的其余部分是参数。在参数中,您可以指定API调用的确切内容。我正在解释下面的一些参数:
  3. action参数:Wikipedia API中有许多action个参数。 action=query参数用于获取有关维基百科文章的信息。另一个常见的操作参数是action=opensearch,用于搜索维基百科 - 这也在上面的URL中。要阅读有关Action参数的更多信息,请转到here

    每个action参数也可以有自己的子参数。例如,上面的网址中使用的search参数。它告诉API要搜索的术语。

    format参数告诉您希望输入结果的格式。虽然json phpxml也支持但已弃用,但通常为callback=?。有关here的更多信息。

    您的查询中可能已添加

    create table TABLE_1 ( CUSTOMER_ID int, DEPARTMENT_ID int, -- foreign key reference to DEPARTMENT table SENT date, RECEIVED date ); 以触发JSONP响应以避免违反Same Origin Policy。有关维基百科API的跨站点请求的更多信息可用here

    `