0
我已經閱讀了大量的帖子,舊的,新的和維基百科的文檔。如何使用jQuery和維基百科API進行搜索
我有這樣的要求,工程本身和的SANbox:
- https://en.wikipedia.org/w/api.php?action=query&list=search&srsearch=einstein&format=json
- https://www.mediawiki.org/wiki/Special:ApiSandbox#action=query&format=json&list=search&srsearch=einstein
但是當我嘗試在JavaScript腳本中使用它,我不能讓數據:
我試過ajax和Json:
這裏是我使用的代碼:
- 一個 'GET' 使用Ajax請求:
代碼標記吮吸
function build_wiki_search_url(pattern) {
var base_url = "https://en.wikipedia.org/w/api.php";
var request_url = "?action=query&format=json&list=search&srsearch=";
var url = base_url + request_url + pattern;
return url;
}
$(document).ready(function() {
$("#doit").click(function() {
console.log("Submit button clicked");
var pattern = $("#search").val();
var url = build_wiki_search_url(pattern);
console.log(url);
$.ajax({
type: "GET",
url: url,
dataType: 'jsonp',
success: function(data) {
console.log(data);
},
error: function(errorMessage) {
console.log("damnn");
}
});
console.log("end");
});
})
與以下AJAX的一個 'POST' 請求維基百科文檔
var base_url = "https://en.wikipedia.org/w/api.php"; $.ajax({ contentType: "application/json; charset=utf-8", url: base_url, data: { action: 'query', list: 'search', format: 'json', srsearch: 'einstein', origin: '*', }, dataType: 'json', type: 'POST', success: function(data) { console.log("ok"); // do something with data }, error: function(errorMessage) { console.log("damnn"); } });
和的getJSON嘗試:
//getJSON atempt. console.log(url + '&callback=?'); $.getJSON(url + '&callback=?', function(json) { console.log("ok"); });
這裏是我的控制檯輸出:
Submit button clicked
https://en.wikipedia.org/w/api.php?action=query&format=json&list=search&srsearch=einstein
script.js
end