API RESTful в методе PHP, $. ajax не получает данные, которые вернул GET - PullRequest
1 голос
/ 30 марта 2020

Я использую PHP с RESTful API, у меня проблема с запросом GET. Моя функция возвращает массив объектов, которые я могу видеть в своем браузере, если я нажму F12-> Сеть-> Функция. php -> Ответ

Это ответ:

{"data":[{"content":"test123","user_id":"2","user_email":"0","username":"admin","ad_id":"1","date":"2020-03-28"}]}

Теперь вернемся к методу $. ajax, , если я попытаюсь проанализировать эти JSON данные, он разберется с "1" вместо массива объектов . Ниже мой метод $. ajax и функция, которые загружают эти объекты

 $.ajax({method:"GET", url:"api.php/loadComment/"+$('#ad_id').val(),done:function(data){
   $comments = JSON.parse(data);
    console.log($comments);
}});  

метод переключения в мой файл API. php, это успешно загружает объекты в $ комментарии:

switch($method){
     case 'GET':
        $comments["data"] = Comment::returnAll($db,$request[1]);
        echo json_encode($comments);
        break;
}

1 Ответ

0 голосов
/ 30 марта 2020

Ваш ajax вызов не построен должным образом, так как обработчик .done должен находиться вне самого вызова ajax, то есть:

<script>
    $.ajax({
        method: "GET",
        url: "api.php/loadComment/" + $('#ad_id').val()
    }).done(function (data) {
        $comments = JSON.parse(data);
        console.log($comments);
    });
</script>
...