単語を入力してボタンをクリックするコードを書き込もうとしています( "return"ボタンを押してコードを後で追加します)。あなたが入力した単語に関連しています。それぞれの結果にはタイトル/ URLと説明が含まれます(基本的にはページの最初の文章です)。私はAPI Sandboxを使って私が必要とするものを見つけようとしましたが、私が得た結果は私が探していたものではありませんでした。私はまだlist=search
とgenerator=search
の違いを得ていません。両方とも結果を返すからです。しかし、list=search
を使って、jsonのタイトルをdata.search [i] .titleとし、説明文(?)をdata.search [i] .snippetとすると、より多くの成功を収めたようです。しかし、私はgenerator=search
を使用して情報を呼び出すことができません。 MediaWiki APIのドキュメントはあまりにも混乱していました...基本的には、generator=search
を使用した場合にのみ発生すると思われる情報の抽出を呼び出したいと思います。しかし、タイトルをdata.pages[i].title
、説明をdata.pages[i].extract
と呼ぶときにエラーが発生しました。WikipediaのAPI検索freecodecampを混乱させた
は、ここに私のコードです:それはあなたがオプションgenerator=allpages
、generator=links
を持ってオプションではありませんので、
$(document).ready(function() {
function getWord() {
var keyword = $("#searchkeyword").val();
$.ajax({
url: "https://en.wikipedia.org/w/api.php?",
type: 'GET',
dataType: "jsonp",
data: {
action: 'query',
format: 'json',
prop: 'extracts',
list: 'search',
srsearch: keyword,
exsentences: '1',
exlimit: '10',
exintro: '1',
\t explaintext: '1'
},
success: function(data) {
console.log(data);
$("#articlearea").empty();
for(var i = 0; i < 10; i++) {
$("#articlearea").append('<div class="articlebox">' + data.query.search[i].title + '<br>' + data.query.search[i].extract + '</div>');
}
}
});
};
$("#submitbtn").on("click", getWord);
});
@import url('https://fonts.googleapis.com/css?family=Amiko:400,600');
body {
position: relative;
font-family: 'Amiko', sans-serif;
}
html, body{
height:100%;
margin: 0;
background-color: #40e0d0;
}
.wrapper {
text-align: center;
position: relative;
}
.container {
width: 75%;
margin: 30px auto 0;
}
.container a {
color: #ffffff;
font-size: 1.1em;
text-decoration: none;
margin-bottom: 10px;
display: block;
}
input {
border: 1px solid #ffffff;
border-radius: 4px;
padding: 5px 8px;
font-size: 1.3em;
}
#submitbtn {
position: relative;
z-index: 1;
left: -32px;
top: -2px;
color: #7B7B7B;
cursor:pointer;
width: 0;
}
.fa-search {
font-size: 1.3em;
}
<div class="wrapper">
<div class="container">
<a id="randomlink" href="https://en.wikipedia.org/wiki/Special:Random" target="_blank">Click here for a random Wikipedia article</a>
<form>
<input id="searchkeyword" type="text" placeholder="Search Wikipedia" />
<i id="submitbtn" class="fa fa-search"></i>
</form>
<div id="articlearea"></div>
</div>
</div>
あなたがところで取得しているものをエラー表示してもらえますか? –
これは 'generator = search'を使用したときに発生するエラーです:http://codepen.io/kikibres/pen/evZzzX。私はまだコンソールで配列を取得することができますが、 "Uncaught TypeError:未定義のプロパティ '0'も読み取れません"というエラーもコンソールに表示されます。 –
下記のコードスニペットで最も重要な理由をチェックしてください –