【发布时间】:2019-07-14 03:47:07
【问题描述】:
我按照spring官方链接用jpa搭建了一个rest server。这适用于浏览器或 chrome postman 扩展。
https://spring.io/guides/gs/accessing-data-rest/
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
并希望使用 Angular 来显示和处理数据。这是基于 Angular 官方英雄示例。
但我无法处理来自 Spring JPA 休息服务器的响应。 因为格式是 HAL - 超文本应用语言。 看起来像:
{
"_embedded" : {
"persons" : [ {
"firstName" : "name1",
"lastName" : "name2",
"_links" : {
"self" : {
"href" : "http://localhost:8080/persons/1"
},
"person" : {
"href" : "http://localhost:8080/persons/1"
}
}
},
.......
persons 数组中没有 ID。
如何使用 Angular 处理这种格式? 我应该自己编写javascript代码吗? 如果是这样,如何从 Angular httpclient 的结果中获取原始 JSON 数据?
我尝试编写 spring 控制器来为 Angular 返回正常的 JSON,这很有效。 但是这样我就失去了 Spring JPA Repository 的好处,例如 PagingAndSortingRepository、CrudRepository 和 JpaRepository。
我想保留纯弹簧和角度特征,只需更改角度服务即可获取数据。
【问题讨论】:
标签: json angular spring rest spring-data-jpa