jQuery-请求JSON数据时出现AJAX意外令牌错误

时间:2019-10-03 23:13:19

标签: jquery ajax

这是AJAX:

$.ajax({
    type: 'post',
    url: domain + "/do_getmemes.php",
    dataType: 'json',
    data: {userid: userid},
    success: function(data) {
        alert(data["0"]["id"]);
    }
}); 

这是我想得到的JSON:

[{"id":"6","pic":"c0cZvS9M64.jpg","userid":"14","nickname":"pablo jackson"},{"id":"7","pic":"XUulYui831.jpg","userid":"14","nickname":"pablo jackson"}]

但是我得到这个错误:

[event:[object Object]], [jqXHR:[object Object]], [ajaxSettings:[object Object]], [thrownError:SyntaxError: Unexpected token [ in JSON at position 2])

这是怎么了?我无数次地使用AJAX来获取json响应,但这是我第一次这样的愚蠢错误。

这是PHP文件的最后一部分:

$array = array();
$x = 0;
while($parse = mysqli_fetch_assoc($anfrage))
{
    echo
    $array[$x]['id'] = $parse['id'];
    $array[$x]['pic'] = $parse['pic'];  
    $array[$x]['userid'] = $parse['memberid'];  
    $array[$x]['nickname'] = $parse['membername'];

    $x++;
}

echo json_encode($array);
file_put_contents('wth.json', json_encode($array));

1 个答案:

答案 0 :(得分:-1)

警报无法呈现对象,您可以alert( JSON.stringify(data["0"]["id"]) );,也可以只使用console.log(data["0"]["id"]);,它更适合您要查看的数据类型。

嗯,php应该没问题,您是否已正确设置响应头?

header("Content-Type: application/json");