我使用@RestController
中@Entity
设置为spring.data.rest.base-path
的{{1}}变量为application.peroperties
个对象创建了/api
个@RequestMapping("someEndpoint")
。 {1}}它没有使用变量。
实施例
对于@Entity
类用户,REST端点位于:
`http://localhost:8081/api/users'
但是当我尝试访问someEndpoint
时:
'http://localhost:8081/api/someEndpoint'
我收到了回复:
回应状态
HTTP/1.1 404 Not Found
身体
"timestamp":1461267817272,"status":404,"error":"Not Found","message":"No message available","path":"/api/someEndpoint"}
而是REST服务的端点位于
'http://localhost:8081/someEndpoint'
响应:
HTTP/1.1 200 OK
控制器类
@RestController
public class HomeController {
@RequestMapping(value = "/")
public String index() {
return "index";
}
@RequestMapping("someEndpoint")
public Stuff runSomething(
@RequestParam(value = "id", required = true) String id)
我的配置中缺少什么?
谢谢
答案 0 :(得分:6)
spring.data.rest.base-path
适用于Spring Data REST,它通过REST使用HATEOAS将存储库暴露给外部,而不是弹簧上下文。
对于Spring MVC,你想要的是server.context-path
。
检查here是否有完整属性。