0

正確なテキストを参照できるこの API を使用しようとしていますが、getJson が機能していないようで、null を返すだけです。

$.getJSON('http://api.biblia.com/v1/bible/content/KJV.json?key=MYAPIKEY=John+3:16-18&style=bibleTextOnly', function(data) {
  alert(data);
});

キーを取り出して、実際の API キーでテストしましたが、URL にアクセスするだけで問題なく動作します。それを機能させるために他に何かする必要がありますか?

これは、URL に API キーがある場合に URL から得られるものです。

{"text":"神は、独り子をお与えになったほどに、世を愛されたからです。独り子を信じる者は誰でも滅びることなく、永遠の命を得るためです。彼を通して世界が救われるように. 彼を信じる人は非難されません. しかし、信じない人はすでに非難されています. 彼は神の独り子の名前を信じていないからです.

4

3 に答える 3

1

テストのためだけに、代わりにこれを試してください:

$.ajax({
  url: 'http://api.biblia.com/v1/bible/content/KJV.json?key=MYAPIKEY=John+3:16-18&style=bibleTextOnly',
  dataType: 'json',
  success: function(data) { alert(data); }
});

それはあなたのために働きますか?

于 2010-05-18T22:21:35.647 に答える
1

key=MYAPIKEY=John+3:16-18

パラメータ値はすでに URL エンコードされていますか? ないように見えます。、およびは=、URL の予約文字です。+:

代わりにこれを試してください:

key=MYAPIKEY%3DJohn%2B3%3A16-18

JS でこれを自分で行うには、クエリ文字列でその戻り値をパススルーして使用しますMYAPIKEY=John+3:16-18encodeURIComponent()

于 2010-05-18T22:24:24.597 に答える
0

クロスドメイン リクエストの制限がかかっていることは確かです。あなたの最善の策は、JSON の代わりに JSONP を使用することです (api.biblia.com が JSONP をサポートしていると仮定します):

http://api.jquery.com/jQuery.ajax (そのページの JSONP データ型の説明を参照してください)

于 2011-01-14T17:03:28.663 に答える