2016-06-30 6 views
0

外部URLからJSONを取得しようとしています。クロスドメイン問題のため、私はyahoo YQLサービスを使用します。jQueryクロスドメインリクエストJSON:nullのプロパティ 'json'を読み取れません

私はエラーを取得する:は、プロパティを読み取ることができませんヌル

の「JSON」は、あなたのヒントをありがとう!

$.ajax({ 
 
    url: "http://query.yahooapis.com/v1/public/yql", 
 
    dataType: "jsonp", 
 
    jsonp: "callback", 
 
    error: function() { 
 
    \t alert('There is an error with rawdata'); 
 
    }, 
 
    success: function(response) { 
 
     
 
\t \t schema = []; 
 
\t \t object = []; 
 
\t \t data = []; 
 
\t \t 
 
     var schema = response.query.results.json.schema; 
 
     var options = response.query.results.json.options; 
 
     var data = response.query.results.json.data; 
 

 
     console.log("schema: ", schema); // server response 
 
     console.log("options: ", options); // server response 
 
     console.log("data: ", data); // server response 
 

 
     \t //$("#productEditor").alpaca("destroy"); 
 
    \t \t //jsonEditor(schema, options, data); 
 

 
     
 
    }, data: { 
 
     q: "select * from json where url=\"https://www.webongo.de/data.json?format=json?callback=?\"", 
 
     format: "json" 
 
    }, 
 
    
 
      
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答えて

1

あなたは、更新されたコード

$.ajax({ 
 
    url: "http://query.yahooapis.com/v1/public/yql", 
 
    dataType: "jsonp", 
 
    jsonp: "callback", 
 
    error: function() { 
 
    \t alert('There is an error with rawdata'); 
 
    }, 
 
    success: function(response) { 
 

 
\t \t schema = []; 
 
\t \t object = []; 
 
\t \t data = []; 
 
\t \t if(response.query.results!==null){ 
 
      var schema = response.query.results.json.schema; 
 
      var options = response.query.results.json.options; 
 
      var data = response.query.results.json.data; 
 

 
      console.log("schema: ", schema); // server response 
 
      console.log("options: ", options); // server response 
 
      console.log("data: ", data); // server response 
 

 
     \t //$("#productEditor").alpaca("destroy"); 
 
    \t \t //jsonEditor(schema, options, data); 
 
     }else{ 
 
      console.log("Results returns null"); 
 
     } 
 
    }, data: { 
 
     q: "select * from json where url=\"https://www.webongo.de/data.json?format=json?callback=?\"", 
 
     format: "json" 
 
    }, 
 
    
 
      
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

ありがとう参照、JSONレスポンスにnullチェックを追加する必要があります。今、それはエラーを得ることはありませんが、私はまだオブジェクトを取得しません。 – mm1975

+0

可能性がありますあなたは間違ったクエリをYQLに渡していますか? –

関連する問題