我有 2 个端点,如下所示,但我无法使用这样的端点 url:
@GetMapping("/{email}")
public ResponseEntity<Void> findByEmail(@PathVariable String email) {
}
@GetMapping("/{id}")
public ResponseEntity<Void> findById(@PathVariable long id) {
}
我应该使用类似
@GetMapping("mail/{email}")
的东西吗?
是的,为每个端点使用不同的路径是避免冲突的好方法。您可以将 @GetMapping 注释与每个端点的唯一路径一起使用,例如 @GetMapping("/email/{email}") 用于 findByEmail 方法,@GetMapping("/id/{id}") 用于 findById 方法。
因此,当请求以 URL /{email} 或 /{id} 形式传入时,Spring 框架可以根据不同的路径值区分这两个端点。