我想從我的Web主機上託管的PHP腳本中獲取JSON數據(本地在Xampp中)。如何從託管的PHP腳本使用JavaScript獲取JSON數據?
PHP腳本是這樣的:
<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');
// Creating the data array
$data = array(
'id' => '1',
'url' => 'http://twitter.com',
'text' => 'test 001',
);
header('Content-Type: application/json');
echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES);
?>
當直接從服務器(http://website.com/php/script.php),它會顯示數據:
{
"id": "1",
"url": "http://twitter.com",
"text": "test 001"
}
和虛線HTML/JS,其應該輸出這樣的:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$.getJSON('http://website.com/php/script.php', function(data) {
var items = [];
$.each(data, function(key, val) {
items.push('<li id="' + key + '">' + val + '</li>');
});
$('<ul/>', {
'class': 'my-new-list',
html: items.join('')
}).appendTo('body');
});
</script>
</head>
<body>
<span id="output"></span>
</body>
</html>
我在xampp中運行html作爲.php腳本,我不確定是否在tha t與jQuery或普通的JS有什麼區別,但大多數情況看起來不錯。
我該如何找回數據「1」,「http://twitter.com」和「test 001」等?
它工作得很好,所以如果你沒有得到任何東西,也許你的路徑是錯的?現在測試了PHP腳本和HTML頁面,並且它們都正常工作(將路徑更改爲PHP腳本,除此之外它們完全相同)。 – junkfoodjunkie
這很奇怪,我相信路徑沒問題。我不知道這是否是一個本地問題,我會嘗試在網上託管它,看看會發生什麼。 – zeddex
它現在似乎正在工作,就像您將.php重命名爲html後所說的那樣。 – zeddex