【问题标题】:SyntaxError: Unexpected end of JSON input from ajax post callSyntaxError:来自 ajax 后调用的 JSON 输入意外结束
【发布时间】:2020-01-06 19:06:36
【问题描述】:

我从我的 ajax post 调用中收到“SyntaxError: Unexpected end of JSON input”,以将数据发送到我的 serverlet 进行处理。一切似乎实际上都在工作 - ajax 正在将数据发送到 servlet,而 servlet 正在正确接收数据。我看不出解析器为什么会抛出错误。

我在 StackOverFlow 上研究并尝试了许多其他解决方案,但均未成功。

感谢任何帮助或指点!

干杯...史蒂夫

我的浏览器代码是:

function createDataset(){
    var jsonObj = new Object();
    jsonObj.display_drivername = document.getElementById('driver_namedb').value;
    jsonObj.drive_seq1 = document.getElementById('drive_seq1').value;
    return jsonObj; 
}

function submit_claim() {
//Main code call
    var JsonDataset = createDataset();
    console.log(JsonDataset);
        request = $.ajax({
            url: '../wp-content/themes/u-design-child/deleteme.php', 
            type: 'POST',
//  Fix - delete this line  contentType:'application/json; charset=utf-8',
//  Fix - delete this line  dataType: 'JSON',
            data: JsonDataset
        }); 
}

以及deleteme.php中的服务器端测试代码:

//elog writes to error.log file
if(!empty($_POST['display_drivername'])) {elog ('Drivername found'.$_POST['display_drivername']);};
if(empty($_POST['display_drivername'])) {elog ('driver name empty');};
if(!empty($_POST['drive_seq1'])) {elog ('DSN found'.$_POST['drive_seq1']);};
if(empty($_POST['drive_seq1'])) {elog ('DSN empty');};  

我得到的结果是:

来自 Submit_Claim (JsonDataset) 的控制台日志输出(在 Chrome 控制台中扩展):

{display_drivername: "Steve Parry [SPAR]", drive_seq1: "2438"}
display_drivername: "Steve Parry [SPAR]"
drive_seq1: "2438"
__proto__: Object

来自 DeleteMe.php 网络标题的表单数据:

display_drivername: Steve Parry [SPAR]
drive_seq1: 2438

错误日志(来自 Deleteme.php):

[06-Jan-2020 18:49:44 UTC] string(34) "Drivername foundSteve Parry [SPAR]"
[06-Jan-2020 18:49:44 UTC] string(13) "DSN found2438"

编辑 1:看到现在已经消失的某人的评论,指出 contenttype 应该是 contentType。谢谢你,但这并没有改变问题。

EDIT 2更改代码以反映解决方案

【问题讨论】:

    标签: json ajax


    【解决方案1】:

    我最终通过完全删除 contentType 和 dataType 行使其完美运行。

    【讨论】:

      猜你喜欢
      • 2016-08-31
      • 2015-08-05
      • 1970-01-01
      • 1970-01-01
      • 2021-04-12
      • 2016-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多