作者回复: 抱歉,之前没注意到这个问题,今天看到另一个留言发现这里还有一个。我试了一下,你反馈的问题是存在的。我们RestTemplate里用的请求Body需要改一下,增加一层。
req = RequestEntity.post(items.getTemplate().expand()).body(Collections.singletonMap("_links", coffee.getLink("self")));
作者回复: 我们RestTemplate里用的请求Body需要改一下,增加一层。
req = RequestEntity.post(items.getTemplate().expand()).body(Collections.singletonMap("_links", coffee.getLink("self")));
作者回复: 我们简单的话就让RepositoryRestResource自己来设置。如果希望自己来手动定义的话,可以参考一下Spring HATEOAS的文档的第三部分。
作者回复: RepositoryRestResource给我们生成的rel就是coffees。你可以自己访问一下看看每个链接的详细信息。
作者回复: HAL在很多时候附加的内容还是挺多的,如果对序列化大小、性能有要求,可能还是需要考虑一些因素,在客户端支持上,也要考虑一下,如果试下来都没什么问题,那你可以用一下。但话又说回来,里面很多的语义信息,在你的系统里,可能并用不上,是不是纯粹的JSON更符合你的需要呢,本身RestTemplate已经让调用变得很简单了。