Fal*_*nIA 5 spring-hateoas hal-json spring-boot
我想默认禁用 HAL 格式。
流文档,我设置了这个属性。
spring.hateoas.use-hal-as-default-json-media-type=false
Run Code Online (Sandbox Code Playgroud)
然后测试一下:
1. 带 header 的请求Accept: application/json
。
标题:Content-Type: application/json;charset=UTF-8
回复:
{
"links": {}
}
Run Code Online (Sandbox Code Playgroud)
2. 带标头Accept: */*
或不带Accept
标头的请求。
标题:Content-Type: application/hal+json;charset=UTF-8
回复:
{
"_embedded": {},
"_links": {}
}
Run Code Online (Sandbox Code Playgroud)
版本spring-boot
是1.5.3,我用的是spring-boot-starter-hateoas
.
无论如何,在没有指定 header 的情况下,是否让 hatoas 在没有 HAL 的情况下响应 json?
多谢。
更新:
请求地址:http://localhost:8080/greeting
带有 header 的请求Accept: */*
。
HTTP/1.1 200
Content-Type: application/hal+json;charset=UTF-8
{
"content":"Hello, World!",
"_links":{
"self":{
"href":"http://localhost:8080/greeting?name=World"
}
}
}
Run Code Online (Sandbox Code Playgroud)
带有 header 的请求Accept: application/json
。
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
{
"content":"Hello, World!",
"_links":{
"self":{
"href":"http://localhost:8080/greeting?name=World"
}
}
}
Run Code Online (Sandbox Code Playgroud)
默认情况下我不需要 HAL,因此我resources/application.properties
向项目添加了一个配置文件。
spring.hateoas.use-hal-as-default-json-media-type=false
Run Code Online (Sandbox Code Playgroud)
并再次测试。
带有 header 的请求Accept: */*
。
HTTP/1.1 200
Content-Type: application/hal+json;charset=UTF-8
{
"content":"Hello, World!",
"_links":{
"self":{
"href":"http://localhost:8080/greeting?name=World"
}
}
}
Run Code Online (Sandbox Code Playgroud)
带有 header 的请求Accept: application/json
。
HTTP/1.1 200
Content-Type: application/json;charset=UTF-8
{
"content":"Hello, World!",
"links":[
{
"rel":"self",
"href":"http://localhost:8080/greeting?name=World"
}
]
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4535 次 |
最近记录: |