所以假设我有一个现有的应用程序有两个端点/人和/裤子.呼叫GET /人员返回:
[
{
"name":"john",
"age":37,
"pants":[
{
"color":"green",
"brand":"levis",
"size":"medium"
},
{
"color":"indigo",
"brand":"jncos",
"size":"medium-with-huge-legs"
}
]
},
{
"name":"june",
"age":23,
"pants":[
{
"color":"pink",
"brand":"gap",
"size":"small"
}
]
}
]
Run Code Online (Sandbox Code Playgroud)
如果我使用Spring Data Rest并拨打GET/person,我会收到类似的信息:
{
"_links":{
"next":{
"href":"http://myapp.com/people?page=1&size=20"
},
"self":{
"href":"http://myapp.com/people{&page,size,sort}",
"templated":true
},
"search":{
"href":"http://myapp.com/people/search"
}
},
"_embedded":{
"people":[
{
"name":"john",
"age":37,
"_links":{
"self":{
"href":"http://myapp.com/people/john"
},
"pants":{
"href":"http://myapp.com/people/john/pants"
}
}
},
{
"name":"june",
"age":23,
"_links":{
"self":{
"href":"http://myapp.com/people/june"
},
"pants":{
"href":"http://myapp.com/people/june/pants"
}
}
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
假设我有一堆我不想改变的现有客户端 - 在某些情况下是否有任何方法可以禁用响应的超媒体部分(比如Accept ="application/json")但是为了启用它们其他人(Accept …
从RepositoryRestConfiguration我可以看到该设置spring.data.rest.default-media-type=application/json可以更改所服务的默认媒体类型@RepositoryRestResource.
@SuppressWarnings("deprecation")
public class RepositoryRestConfiguration {
private MediaType defaultMediaType = MediaTypes.HAL_JSON;
}
Run Code Online (Sandbox Code Playgroud)
问题:正如此类所在deprecation,设置/覆盖默认类型的正确方法是什么?