[英]Ajax JSON.stringify, POST variable is empty
我正在嘗試序列化HTML表單,並使用POST操作通過Jquery發送它,目前我有以下Jquery:
var dataToSend = {
'name': 'person',
'description': 'very nice person'
}
$.ajax({
type: "POST",
url: "http://localhost/rest/PersonPOST.php",
data: JSON.stringify(dataToSend)
//contentType: 'application/json',
//dataType: 'json'
});
在服務器端,我有一個PHP腳本,可以打印接收到的內容,到目前為止,我設法接收了一個沒有$ _POST變量的請求。 如果我將contentType和dataType分解,則沒有任何變化...
<?php
error_log("START POST");
foreach ($_POST as $key => $entry)
{
if (is_array($entry))
{
foreach ($entry as $value)
{
error_log($key . ": " . $value . "<br>");
}
}
else
{
error_log($key . ": " . $entry . "<br>");
}
}
?>
上面的ajax請求出了什么問題?
編輯 :服務器端的file_get_contents('php:// input')正確打印應在$ _POST變量內的內容。 誰能回答通常將其放在$ _POST變量中的原因,或者為什么不可能呢? 謝謝
您無需進行stringify
因為您已經在手動創建JSON對象。 像這樣嘗試:
var dataToSend = {
'name': 'person',
'description': 'very nice person'
};
$.ajax({
type: "POST",
url: "http://localhost/rest/PersonPOST.php",
data: dataToSend
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.