これは本当に簡単な質問ですので、楽しんではいけません。私にJSONオブジェクトを提供するWebサービスのURLが与えられています。私はちょうどたくさんのAF JavaScriptの書面を取得するように見えるjQuery Ajaxを使用してJSONオブジェクトを返す
var myObj = $.getJSON("https://www.myurl/");
しかしこのISNの#tは私がにconsole.log(myObj.toSourceを())を使用するときのように働いて...例えば、jQueryのgetJSONメソッドを使用したいです私のオブジェクトではなく、コンソールに。
var thisJsonObj;
$.getJSON("https://www.myurl/", function(result){
thisJsonObj = result;
});
console.log(thisJsonObj.toSource());
これは動作しません。どちらか...私が間違っているつもりです:私はこのような何かを行う必要があり、私はこの方法でコールバックを追加することができます知っていますか? URLは正常に動作しています。
クロスドメインコールの場合は、jsonの代わりにjsonpを試してください。サーバーサイドコードに「コールバック」を追加することを忘れないでください。 Jqueryはjsonとのクロスドメイン・コールを行うことはありませんが、この制限を回避するために独自のAjax関数を作成することはできます。 – Tom
httpリクエストが開始された直後にconsole.logの呼び出しが実行されますが、http要求が完了するまでコールバックが呼び出されないため、thisJsonObjはconsole.logが呼び出されるまでには設定されません。 console.log呼び出しをコールバックに移動すると、正しい結果が表示されるはずです – jjwchoy