2012-01-17 3 views
0

jqueryのajaxメソッドでdataType 'jsonp'を使用してロードしようとしているものはほとんど 'エラー'ですが、 'json'同じjsonコンテンツjsonpを使用する必要があります。なぜなら私は外部APIを呼び出すためです。jqueryでのjsonpの使用は常に失敗すると思われます

のJS方法:

$.ajax({ 
      url: 'test3.json', 
      type: 'GET', 
      dataType: 'json', 
      data: { 
       action: 'APICALL', 
       ID: '59' 
      }, 
      success: function(data, textStatus, xhr) { 
      console.log('success'); 
      }, 
      error: function(data, textStatus, xhr) { 
      console.log('error: '+textStatus); 
      console.log(data); 
      }, 
      complete: function(data, textStatus, xhr) { 
      console.log('complete'); 
      } 

     }); 

}) 

test3.jsonファイル:

{"symbol": "IBM", "price": "91.42"} 
+0

この 'test3.json'をブラウザでご覧になれますか?そうであれば、完全修飾URLを試してください。 – jondavidjohn

+0

JSONPは魔法ではありません。 – SLaks

+0

あなたはまたdataType: 'jsonp'とコールバックを必要とします – atmd

答えて

5

JSONPではありません。

callbackパラメータを守るJSONP endpointを書く必要があります。

+0

私はjsonpの仕組みを誤解していると思います。私が実際にやろうとしているのは、あらかじめ作成されたjsonレスポンスを取得し、ドメイン間で使用することだけです。 – Jameson

+1

正しい。 JSONPは魔法ではありません。正しく実装する必要があります。 Wikipediaを参照してください。 – SLaks

関連する問題