AngularJS承诺解析数据时出错



我正在尝试从承诺赢得角度JS开始。

但是,当 AngularJS 从后端解析结果时,我收到一个错误。

这是怎么回事?

这是我的 HTML:

<div ng-app="clinang" ng-controller="pacientesCtrl">
     <a class='btn btnprimary' href='/getdadospac/?oper=S' >Button</a> 
     <table ng-table="tableParams" class="table" show-filter="true">
        <tr ng-repeat="paciente in $data">
            <td title="'Pront'" filter="{ name: 'text'}" sortable="'pront'">
                {{paciente.pront}}</td>
            <td title="'Nome'" filter="{ age: 'number'}" sortable="'nome'">
                {{paciente.nome}}</td>
        </tr>
    </table>
 </div>

这是我从后端返回的 JSON 数据:

{"draw":,"recordsTotal":5303,"recordsFiltered":5303,
"data":[{"DT_RowId":"4367","pront":"4367","nome":"XXXXXXXXX","endereco":"RUA TEODORO DA SILVA,294/314","bairro":"VILA ISABEL","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"2567*0440","cpf":"","email":""},
{"DT_RowId":"21","pront":"21","nome":"YYYYYYYYY","endereco":"R ARAGUAIA","bairro":"PARQUE CHUNO","cidade":"DUQUE DE CAXIAS","estado":"RJ","telefone":"35637685","cpf":"02570293709","email":"jaceni@ig.com.br"},
{"DT_RowId":"23","pront":"23","nome":"ZZZZZZZZZZ","endereco":"rua 18 de outubro 241 101","bairro":"tijuca","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"","cpf":"","email":""},
{"DT_RowId":"24","pront":"24","nome":"AAAAAAAAAAA","endereco":"RUA MARIZ E BARROS 470 APTO 610","bairro":"TIJUCA","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"22646701","cpf":"53551192715","email":""},
{"DT_RowId":"27","pront":"27","nome":"AAAAAAAA GONu00C7ALVES","endereco":"rua anu00E1polis 251","bairro":"nova iguau00E7u","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"3101-9648","cpf":"","email":""},
{"DT_RowId":"28","pront":"28","nome":"ASKLJALDJSLKADJ","endereco":"lucio de mendonu00E7a 24 apt 501","bairro":"maracana","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"2568-9519","cpf":"04301072772","email":""},
{"DT_RowId":"30","pront":"30","nome":"SADFSADFASDFSD","endereco":"RUA GRAVATAI N 61 APTO 302","bairro":"ROCHA MIRANDA","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"32787747","cpf":"","email":""},
{"DT_RowId":"29","pront":"29","nome":"ANASADFSA DOS SANTOS","endereco":"saboia lima 12 apt 04","bairro":"tijuca","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"2204-1498","cpf":"48080152268","email":""},
{"DT_RowId":"31","pront":"31","nome":"JOAO SDAFSA SOUZA","endereco":"av dom helder camara 312 bl 05 apt 102","bairro":"benfica","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"","cpf":"075422437-64","email":""},
{"DT_RowId":"33","pront":"33","nome":"SKDJFSDAJFLASD","endereco":"fabio da luz 275 bl 04 apt 504","bairro":"meier","cidade":"RIO DE JANEIRO","estado":"RJ","telefone":"3979-0859","cpf":"","email":""}]}

我在 JSON 返回中收到下一个错误:

SyntaxError: Unexpected token , in JSON at position 8
    at JSON.parse (<anonymous>)
    at fromJson (http://127.0.0.1:8888/files/lib/angular/angular.js:1377:14)
    at defaultHttpResponseTransform (http://127.0.0.1:8888/files/lib/angular/angular.js:11003:16)

JS代码:

var app = angular.module("clinang", ["ngTable", "ngResource"]);
            (function() {
              app.controller("pacientesCtrl", pacientesCtrl);
              pacientesCtrl.$inject = ["NgTableParams", "$resource"];
              function pacientesCtrl(NgTableParams, $resource) {
                // tip: to debug, open chrome dev tools and uncomment the following line 
                debugger;
                var Api = $resource("/getdadospac/?oper=S");
                this.tableParams = new NgTableParams({}, {
                  getData: function(params) {
                    // ajax request to api
                    return Api.get(params.url())
                      .$promise
                      .then(function(rows) {
                          debugger;
                          console.log(rows);    
                          params.total(rows.recordsTotal); // recal. page nav controls
                          return rows.data;
                    });
                  }
                });
                 this.tableParams.reload();
              }
            })();

JSON似乎无效。具体来说,在第一行:

{"draw":,"recordsTotal":5303, .....

"draw"成员没有值。您可以使用像 jsonlint

JSON 响应无效,因此解析失败。键"draw"没有值,因此位置 8 处的无效字符错误。

您可以在此处阅读有关有效 JSON 对象的更多信息:http://json-schema.org

这里有一些例子:http://json-schema.org/examples.html

使用 JSON

验证器,它显示您返回的 JSON 格式存在错误

错误:第 1 行上的解析错误:

"平局": ,"记录总计":------^

期望"EOF"、"}"、"]"得到":">

您需要从后端查看对象的构造