私はFramework7のUrban Dictionary APIの例の上で作業しています。Dom7 - getJsonは動作しますがデータを転送できません
これはURLから結果のJSONである(編集はなぜ私に聞かないでください、それは「A」で始まる):
a{
"bills": [
{
"id": 8,
"name_id": "6",
"category_id": 4,
"isPaid": "Yes",
"value": "190.00",
"expiry": "2016-12-15 00:00:00",
"created_at": "2017-01-04 15:44:00",
"updated_at": "2017-01-04 15:44:00",
"name": {
"id": 6,
"name": "Test1",
"created_at": "2017-01-04 15:39:45",
"updated_at": "2017-01-04 15:39:45"
},
"category": {
"id": 4,
"name": "System",
"created_at": "2017-01-04 15:37:43",
"updated_at": "2017-01-04 15:37:43"
}
}
]
}
これは私のアプリのコードの一部です。 JS:
function getrandom() {
// Get JSON Data from UrbanDictionary API
$$.getJSON('http://[privateurl]', function (json) {
// Insert rendered template
$$('#content-wrap').html(compiledTemplate(json));
});
};
私がやって結果を取得しよう:console.log(getrandom());
を私が手:Undefined
私のリストはロードされません。
{{#each list}}
<li>
<a href="{{bill_id}}" class="item-link item-content external" target="_blank">
<div class="item-inner">
<div class="item-title-row">
<div class="item-title">"{{bill_id}}"</div>
<div class="item-text">by {{value}}</div>
</div>
</div>
</a>
</li>
{{/each}}
しかし、私はこれを行う場合:console.log($$.getJSON('http://hiddenapiurl'));
私は結果だけで罰金を取得します。
edit:実際の都市辞書のAPIは正常に動作します。しかし、私は何らかの理由ではありません。以下は
EDIT2
私-app.jsのための全体のコードです:
var myApp = new Framework7({});
var $$ = Dom7;
// Select Template
var template = $$('#random-template').html();
// Compile and render
var compiledTemplate = Template7.compile(template);
// Defined as function "getrandom"
function getrandom() {
$$.getJSON('http://[privateurl]', function (json) {
// Insert rendered template
console.log(json);
$$('#content-wrap').html(compiledTemplate(json));
});
};
console.log($$.getJSON('http://[privateurl]'));
getrandom();
// Select Pull to refresh content
var ptrContent = $$('.pull-to-refresh-content');
// On refresh
ptrContent.on('refresh', function (e) {
// Emulate 1s loading
setTimeout(function() {
// Execute getrandom to get new Definitions
getrandom();
myApp.pullToRefreshDone();
}, 1000);
});
var mainView = myApp.addView('.view-main', {
dynamicNavbar: true
});
ええ、そうです、私はずっと前にそれを理解しました。私が興味をそそっているのは、 'console.log(json);をたたくと、関数の中で関数が実行されたときに何も返されないということです。 APIを別のものに切り替えると正常に動作します。私に迷惑をかけるもう一つの事は、私のジョンソンが何らかの理由でアルファベット「a」で始まっていることです。私はそれがそれと何か関係があるのだろうかと思う。 – Rosenberg
メインポストに編集全体としてコードを追加しました。ありがとうございます。 – Rosenberg
ああ、あなたが正しいです。しかし、それはまだ動作しません。私はそれに近いと感じています。私のバックエンドのために私はlaravelを使用しています。私は絶対に**アイデアはありません**なぜそれが出力されているのですか?私が確信していることは、それがjsonとしてそれを読んでいないということです。おそらく、それが 'a'のためか、ヘッダーのためでしょうか?その理由は、「a」のためです。努力を続けます、ありがとう。 – Rosenberg