2

jQueryがサポートしているJSONPを使用しようとしているサブドメインのデータにアクセスする必要があります。サブドメインでアクセスしているデータは、静的な(再生成された).jsonファイル(http://www.example.com/data.json)です。

「無効なラベルエラー」エラーが発生し、データを括弧で囲んで?callback =?を使用する必要があることに気付きました。

http://www.example.com/data.json?callback=?

({
 "items": [
 {   
  "url": "http://www.example.com",
  "id": "2981",
        "title": "title",
  "description": "lorem ipsum sit dolor",
  "start": "00:10:00",
   "end": "00:20:00"
 }
})


$.getJSON(url, function(data){
 console.log("json: " + data);
});

()でのデータのラップは、FirebugのNETタブで返されるデータを確認できるようになったので機能しましたが、$。getJSONは何も返さず、起動しないと思います。

私は何が欠けていますか?サーバー側でさらに何かを行う必要がありますか?

ありがとう!

4

3 に答える 3

1

返されるデータはJSON-Pではありません。

ウィキペディアには、JSON-Pがどのように見えるべきかについての適切な説明がありますJSON-Pを受け入れるためのjQuery固有のガイドがあります。

于 2010-03-09T13:38:15.403 に答える
0

HTTPリクエストから返されるコードは、ブラウザによって実行されています。

ブラウザは正常に実行しますが、何にも割り当てられていないため、どこに配置すればよいかわかりません。

幸い、jQueryは十分に賢いので、コードで使用するパラメーター(callback = ? )を使用してみましょう。

サーバー側の言語は、そのコールバックパラメーターを追加し、JSON応答をJavaScript関数呼び出しのように見せなければなりません。

<?php echo $_GET["callback"]?>({
 "items": [
 {   
  "url": "http://www.example.com",
  "id": "2981",
        "title": "title",
  "description": "lorem ipsum sit dolor",
  "start": "00:10:00",
   "end": "00:20:00"
 }
})
于 2010-03-09T13:45:16.853 に答える
0

たとえばhttp://jsonlint.com/で JSON データを検証しようとすると、いくつかのエラーがあることがわかります。

フレームワークまたは手動で JSON データを生成しますか。

手動で JSON データを生成すると、エラーが発生しやすくなります。

エラーを修正するのに役立つことを願っています。

マーティン

于 2014-02-15T09:10:22.550 に答える