簡體   English   中英

Ajax JSON.stringify,POST變量為空

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM