看来我无法通过AJAX将JSON对象传递给我的php服务器

时间:2019-07-12 03:03:48

标签: javascript php ajax

当我试图通过AJAX将JSON对象传递给我的php服务器时,我遇到了一个奇怪的问题。

我调试了我的代码,看来AJAX正常运行,但是问题是我的php服务器没有从请求中获取任何数据。

这是我的AJAX请求代码:

function save(){

        var name = document.querySelector('#firstHeading').textContent;
        var str = document.querySelector('#bodyContent').textContent.split(',');
        var lat = str[0].substring(str[0].indexOf('(') + 1);
        var lng = str[1].substring(1, str[1].indexOf(')'));
        var toSave = {
            name: name,
            lat: lat,
            lng: lng
        };
        var toSend = {data: JSON.stringify(toSave)};

        $.ajax({
            type: "POST",
            url: "./jsonUpload.php",
            contentType: "application/json",
            data: toSend
        }).done(function(){
            alert('Successfully saved!');
        }).fail(function(e){
            alert('An error occurred...');
            console.log(e);
        });
    }

我的服务器代码:

error_log(var_export($_POST, true));
error_log(var_export($_GET, true));
error_log(var_export($HTTP_RAW_POST_DATA, true));
error_log(file_get_contents('php://input'));
$json = file_get_contents('php://input');
$data = json_decode($json);

$ _ POST和$ _GET变量都不能接收任何数据,它们只是空数组,函数file_get_contents是唯一向我显示内容但字符串不可读的函数。

当我在Java中工作时,我真的不知道我做错了什么,我曾经使用与上述相同的方法,并且代码运行良好。

任何帮助将不胜感激,谢谢您。

0 个答案:

没有答案