Files
biji/biji-houdaun/src/main/java/com/test/bijihoudaun/controller/UserController.java
ikmkj cd43768baf feat(security): 添加 Token 验证功能
- 在 CommonApi.js 中添加 validateToken 函数,用于验证 Token 有效性
- 在 HomePage.vue 中集成 Token 验证功能,导出前验证登录状态- 在 UserController.java 中添加 validateToken 接口,用于后端验证 Token
2025-07-31 19:39:59 +08:00

68 lines
2.4 KiB
Java

package com.test.bijihoudaun.controller;
import com.test.bijihoudaun.common.response.R;
import com.test.bijihoudaun.entity.User;
import com.test.bijihoudaun.service.UserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@Tag(name = "用户接口")
@RestController
@RequestMapping("/api/user")
public class UserController {
@Autowired
private UserService userService;
@Operation(summary = "用户注册")
@Parameters({
@Parameter(name = "username", description = "用户名",required = true),
@Parameter(name = "password", description = "密码",required = true),
@Parameter(name = "email", description = "邮箱",required = true)
})
@PostMapping("/register")
public R<User> register(String username, String password, String email){
return R.success(userService.register(username,password,email));
}
@Operation(summary = "用户登录")
@Parameters({
@Parameter(name = "username", description = "用户名",required = true),
@Parameter(name = "password", description = "密码",required = true)
})
@PostMapping("/login")
public R<Map<String, String>> login(String username, String password){
String token = userService.login(username, password);
Map<String, String> tokenMap = new HashMap<>();
tokenMap.put("token", token);
return R.success(tokenMap);
}
@Operation(summary = "用户删除")
@Parameters({
@Parameter(name = "id", description = "用户id",required = true)
})
@DeleteMapping("/deleteUser")
public R<String> deleteUser(Integer id){
userService.deleteUser(id);
return R.success("删除成功");
}
@Operation(summary = "验证Token有效性")
@PostMapping("/validate-token")
public R<String> validateToken() {
return R.success("Token is valid");
}
}