2012-03-27 22 views
0

私は読んで読んで、読んで..私はフィードをプルしようとしています。私は問題が何であるか分からない。なぜなら、ファーンバグは、ダーン・ジョーンを見つけてパースすることで問題ないからだ。jsonp、ちょうど動作していません..常にエラー

ので、1

var url='http://images.wsu.edu/javascripts/tracking/configs/pick.asp'; 
$.getJSON(url+'?callback=?', function(data){ 
    alert('true'); 
    $.jtrack({ 
     load_analytics:{account:GAcode}, 
     trackevents:data // this can be hard codded here or set do be feed in like so 
     }); 
}); 

FAILは、まだ私は.. WTF?

ので

var url='http://images.wsu.edu/javascripts/tracking/configs/pick.asp'; 
$.ajax({ 
    url: url, 
    cache: false, 
    dataType: 'jsonp', 
    jsonp : "callback", 
    success: function(data){ 
    alert('data'); 
    //data=jQuery.parseJSON(data); 
    $.jtrack({ 
     load_analytics:{account:GAcode}, 
     trackevents:data // this can be hard codded here or set do be feed in like so 
    }); 
    }, 
    error: function(e, xhr){ 
    alert('error'); 
    alert(e); 
    } 
}); 

そして再び失敗でそれを見るので...ええと、エラーがまだ私に言うだろうと思います。..してみてください何も.. ..本当のことを可能にし、出力をテストしてください。なぜなら、地獄のように自分自身が原因で、URLを見つけて、私はjsopとand ...を呼び出しているからです。

enter image description here

..だからよく私は..私はバンコクからここですべてのくそスレッドを直撃しているか分かりません。 1つは取引が何であるか知っていますか?

+5

さて、あなたが扱っている、それはJSONPましたスクリーンショットとURLはJSONとして表示しますが、コールバックは設定されていません。 – epascarello

+0

あなたのリンクはちょうどjsonです。APIのドキュメントはありますか?あなたはつもりコールバックすなわちを設定する必要があります:http://web.onassar.com/blog/2009/07/25/jsonp-vs-json-amazing-for-apis/ – JKirchartz

+0

はので、私は、URLの出力を包んコールバックで()と$ .getJSON(URL +、機能(データ){} 'コールバック=?')に変化なし。 –

答えて

1

チェックアウトこのリンク: JSON Example using Callback

私はJSONを返すJSONにコールバックを置くためにニーズを返されたと思います。上記の例では、次のように前面に配置されています:

CALLBACKVALUE([{"id":"4","name":"FICTION","parentid":"3","getfullname":"BOOKS > FICTION"},{"id":"5","name":"NON-FICTION","parentid":"3","getfullname":"BOOKS > NON-FICTION"}) 
+0

[OK]を.. ..これをしなかったし、戻ってそれを引っ張っているようだが、$ .getJSON(URL +、機能(データ){警告() '真';} 'コールバック=?');それでも警告されていませんか? [OK]。これは正しいです..テストのタイプミスのおかげ.. -J –

+0

指摘..バック歓声を取得するためにあなたに感謝 - –

0

JSONPコンテンツ(JSONのみ)を返さないことが問題だと思います。現在サービスしているJSONの先頭にcallbackというパラメータを追加する必要があります。また、カッコで囲みます。例えばあなたは現在、戻ってきている。

[{ 
    "element":"#null", 
    "options":{} 
}, 
    ... 
] 

、あなたが戻ってする必要があります

value_of_callback_param([{ 
    "element":"#null", 
    "options":{} 
    }, 
    ... 
]); 

末尾;はオプションです。どのように動作するのかを説明しているthis linkを参照してください。

application/jsonの代わりにコンテンツタイプにapplication/javascriptを使用する必要があります。これは、JSONオブジェクト/配列の代わりに有効なJavaScriptを返すためです。また、jQuery docs for the $.ajax functionは、errorコールバックがJSONP要求に対して呼び出されるべきではないと述べています。

+0

はいdanfolkesは私がラッパーとしてコールバック値が欠落していた –

0

だけpick.aspはjqueryので生成され、サーバにこのpick.asp?callback=<some string>のように送られます(今から<some string>と呼ばれる)callback urlパラメータの値を取得します。そして、このようなあなたの応答を構築するために、その値を使用します。

<some string>(<your json>); 
0

これは「#NULL」ここ

var url = 'http://images.wsu.edu/javascripts/tracking/configs/pick.asp'; 
$.getJSON(url + '?callback=?', function(data) { 
    alert(data[0].element); 
}); 

に警告することは帰ってくるものです:

callback([ 
    { 
     "element":"#null", 
     "options":{} 
    },{ 
     "element":"a#hover", 
     "options":{ 
      "category":"hover", 
      "label":"function(ele){ return (($(ele).attr('title')!='' && typeof($(ele).attr('title')) !=='undefined') ? $(ele).attr('title') : $(ele).attr('href')) }" 
     } 
    },{ 
     "element":"a[href$='.jpg'],a[href$='.gif'],a[href$='.png'],a[href$='.ppt'],a[href$='.pdf'],a[href$='.doc'],a[href$='.docx']", 
     "options":{ 
      "category":"download", 
      "label":"function(ele){ return (($(ele).attr('title')!='' && typeof($(ele).attr('title')) !=='undefined') ? $(ele).attr('title') : $(ele).attr('href')) }" 
      } 
    },{ 
     "element":"a:not([href*='mailto('])", 
     "options":{ 
      "category":"email" 
      } 
    },{ 
     "element":"a:not([href*='wsu.edu'])", 
     "options":{ 
      "category":"outbound" 
      } 
    },{ 
     "element":"a[href*='wsu.edu']", 
     "options":{ 
       "category":"internal", 
       "noninteraction":"true" 
      } 
    } 
]) 
+0

はいdanfolkesは私を指摘ラッパーとしてコールバック値を欠落している..あなたはそれを見逃していたました..歓声を取り戻すためにあなたに感謝 - –

関連する問題