目前我們已經處理好 JWT token 驗證的部分,接下來將介紹 API註冊帳戶、結合 Jwt token 驗證的流程。
三層式架構 Controller
RestController
@RequestMapping("/api/v1/auth")
@RequiredArgsConstructor
public class AuthenticationController {
private final AuthenticationService service;
@PostMapping("/register")
public ResponseEntity<AuthenticationResponse> register(
@RequestBody RegisterRequest request
) {
return ResponseEntity.ok(service.register(request));
}
@PostMapping("/authenticate")
public ResponseEntity<AuthenticationResponse> authenticate(
@RequestBody AuthenticationRequest request
) {
return ResponseEntity.ok(service.authenticate(request));
}
}
AuthenticationController 的 Spring Boot REST 控制器。這個控制器負責處理用戶身份驗證和註冊的請求。
@RestController:
這個注解告訴Spring這是一個RESTful控制器,會自動將返回的對象轉換為JSON格式的響應。
@RequestMapping("/api/v1/auth"):
設置這個控制器的基礎URL路徑,所有的請求都會以 /api/v1/auth 開頭。
@RequiredArgsConstructor:
這是一個Lombok提供的注解,用於自動生成一個包含所有 final 屬性參數的構造函數。在這裡,它用於初始化 AuthenticationService ,使得控制器可以使用這個服務來處理業務邏輯。