dポイントプレゼントキャンペーン実施中!

http://wikipedia.simpleapi.net/api?keyword=Googl …

上記のURIをたたくと、
receive([{"language":"ja","id"・・・・・・
でスタートする結果が返ってきます。その結果からタイトルやURL、本文のダイジェスト(body)を抜き出すにはどのようにしたら良いのでしょうか?

function receive(result){
が呼び出されるとすると、結果はresultに入りますよね?
結果からタイトルやURL、本文のダイジェスト(body)を取り出したいのです。

result.urlとしてみたり、[]があるので、配列なのかなと思い、result.[0]などを試してみました。
JSON形式の理想配列などを使っているのですかね??
よくわからず困っています。
試してみたプログラムを載せておきます。

//受信
function receive(result){
var s="";

//URL・タイトル・概要
s+=
"<p>"+
result.url+
"<br>"+
result.title+
"<br>"+
result.body+
"</p>";
}
//結果の表示
document.getElementById("display").innerHTML=s;
}

A 回答 (2件)

#1です。



json形式なら連想配列の配列で返すようですから
resultという名前で受取ったなら result[n].項目名 で取り出せると思います。

例 検索した最初の候補のタイトル
result[0].title


他にxmlを使った例もありましたので参考に。
(xmlの例というよりjQueryとの組み合わせの例かな)
http://c-man.s21.xrea.com/mars/wikitest/
    • good
    • 1
この回答へのお礼

詳しい解説ありがとうございます。
例の通りにやって解決しました!
参考の方も勉強してみます。

お礼日時:2008/11/26 10:42

質問例では output=json としているのでjson形式で返ってきます。


デフォルトはxml、他にも多用な形式が用意されています。

http://wikipedia.simpleapi.net/
ここの解説やサンプルを読み解いてみては。

この回答への補足

json形式の他にも多数の形式があることは把握しています。
サンプルは見ましたが、取り出し方については記載しておらず、
解決できずに困っています。

Yahoo!JAPAN DEVELOPER NETWORKのAPIを用いたときは、
result["ResultSet"]["Result"][i]["Title"]で抜け出せたのですが・・・

補足日時:2008/11/20 15:20
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!