AngularJS解析大型json负载时的“意外标记”

AngularJS解析大型json负载时的“意外标记”,json,angularjs,rest,Json,Angularjs,Rest,我有一个相当大的负载,通过JavaREST服务作为json返回,大约3000条相当轻量级的对象记录。Jax-RS和JaxB正在为我整理json方面的内容,因此我怀疑返回的json中是否存在错误 当我直接调用rest资源并在notepad++中查看有效负载时,json文件本身看起来很好,并且底层SQL表中没有回车等胭脂字符 SyntaxError: Unexpected token at Object.parse (native) at ub (http://localhost:

我有一个相当大的负载,通过JavaREST服务作为json返回,大约3000条相当轻量级的对象记录。Jax-RS和JaxB正在为我整理json方面的内容,因此我怀疑返回的json中是否存在错误

当我直接调用rest资源并在notepad++中查看有效负载时,json文件本身看起来很好,并且底层SQL表中没有回车等胭脂字符

SyntaxError: Unexpected token 
    at Object.parse (native)
    at ub (http://localhost:8080/misf-web/lib/angular/angular.min.js:13:122)
    at e.defaults.transformResponse (http://localhost:8080/misf-web/lib/angular/angular.min.js:98:83)
    at http://localhost:8080/misf-web/lib/angular/angular.min.js:97:347
    at Array.forEach (native)
    at n (http://localhost:8080/misf-web/lib/angular/angular.min.js:6:470)
    at Yb (http://localhost:8080/misf-web/lib/angular/angular.min.js:97:329)
    at c (http://localhost:8080/misf-web/lib/angular/angular.min.js:99:14)
    at i (http://localhost:8080/misf-web/lib/angular/angular.min.js:79:437)
    at http://localhost:8080/misf-web/lib/angular/angular.min.js:80:485 angular.min.js:63
我开始玩弄这些数据。删除特定字段中以A开头的所有内容,然后删除B…,以查看是否可以将其缩小到一组特定的记录

我删除了从S开始的所有内容,角度开始起作用

所以我重新加载了数据。删除了以S…开头的所有内容并重试,但失败。因此,我怀疑这与返回的Json无关,而是与有效负载的大小有关

我很感激我可以使用服务器端分页,但我更关心的是为什么这不起作用?我想在应用程序启动时将3000个对象完全加载到应用程序中,但它不起作用……我看不出有什么明显的原因

问候

-更新:建议使用JSONLINT

出现以下错误:

Parse error on line 23:
...       "projectNm": "(Delete) A
-----------------------^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['
我不知道为什么,因为看起来还可以:

   {
    "approvedPriority": "UNKNOWN",
    "disease": "UNKNOWN",
    "diseaseArea": "UNKNOWN",
    "dpomBpomPhase": "UNKNOWN",
    "imed": "UNKNOWN",
    "jtastRanking": "UNKNOWN",
    "moleculeOrTypeOfProduct": "UNKNOWN",
    "planningStatus": "06-TO BE DELETED",
    "programCategoryDesc": "UNKNOWN",
    "projectCode": "UNKNOWN",
    "projectNm": "(Delete) Analytical Productivity (Delete)",
    "projectSk": 562,
    "projectType": "UNKNOWN",
    "therapyArea": "UNKNOWN"
},
更新2:

好的,数据库值看起来不错。然而,当我将json结果中的值复制到文本编辑器中时,JaxB通过线路返回值的过程引入了流氓字符……因此我有一个带有我的-名称的记录,当我将值复制到notepad++中时,它表示我的!!名称中引入了一些奇怪的字符来替换-。其他带有连字符的值也很好。DB端的记录很好…这里发生了什么?为什么泽西决定破坏一些输出

更新3:

循环浏览其中一个违规项目中的字符。在数据库中,当粘贴到Excel并检查Ascii字符时,会出现Ascii代码150,这是一个不可打印的字符


就浏览器而言,i

不太可能是尺寸问题。在浏览器开发工具/控制台的“网络”选项卡中检查请求的全部内容,并将其粘贴到jsonlint.com以查看其无效位置。我将支持@charlietfl关于将数据放入jsonlint的建议。但是,您应该使用angular的未缩小版本进行调试。希望它能给你更少神秘的堆栈跟踪。谢谢,尽管我不确定Jsonlint是否有问题:第23行的Parse error:。。。projectNm:删除----------------^应为“字符串”、“数字”、“NULL”、“TRUE”、“FALSE”、“{”、“[”是否不允许在对象的文本值中使用左括号。。。!?