$发送的数据格式不正确.post到PHP


Incorrect format of data sent by $.post to PHP

我试图将JavaScript对象()以正确的格式发送到PHP文件。后想要的。PHP文件没有设置任何$_POST[]变量,所以我一定是以错误的格式发送的。

JS:

$('#downloadBtn').click(function(){
    var form_data = new Object();
    form_data.filepath = $("#fileName").html();
    $.post( 
        "/UpdateDownloads.php",
        { JSON.stringify(form_data) },
        function(data) {
            alert(data);
        }
    );
});

我知道将发送的数据更改为"{filepath: form_data。Filepath}"将解决这个问题,但这是一个草率的修复,因为它不会随着我向form_data添加越来越多的数据而改变。基本上,我想知道是否有一个JS函数,可以将我的对象()变量转换为POST将接受并设置$_POST['filepath']变量,我添加到我的form_data对象()。

您可以尝试将数据发送为

{'data':JSON.stringify(form_data)}

在服务器端你会得到$_POST['data']

可以通过

转换为对象
json_decode($_POST['data']);

我希望这将工作