我決定停止使用jQuery,因此我將所有內容轉換爲純JavaScript。JSON.stringify發送空對象
我有這個ajax
電話,我想發送url的最後一部分到php服務器,但JSON.stringify()
發送一個empty object
在服務器。
這是怎麼發生的?
AJAX調用:
var ajax = new XMLHttpRequest();
ajax.open('get', 'ajax/autocomplete.php');
ajax.setRequestHeader('Content-Type', 'application/json;charset=UTF-8');
ajax.send(JSON.stringify({q: document.location.href.split('/').slice(-1)[0]}));
PHP:
<?php
require_once '../../private/core/init.php';
header('Content-Type: application/json');
print_r($_GET);//empty
$data = new AUTOCOMPLETE($_GET['q']);
echo json_encode($data->data());
?>
,我得到這個錯誤:Undefined index: q
我不認爲你應該發送請求實體的GET請求。做一個POST或使用查詢參數('?q = ......')。 – Thilo
但我會得到數據。不寫或更新。 @Thilo –
只能使用POST請求發送參數數據。如果使用其他任何請求方法,數據將不會放入請求主體內部。 [文檔](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest) –