From 5fab97cf7e49636d446e063ee6e0eea80c124bd2 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 15 三月 2023 19:05:56 +0800 Subject: [PATCH] 支持不同域的前后端分离部署 --- src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java | 30 +++++++++++++++++++++++++++--- 1 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java index 127e83b..035f380 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java @@ -1,6 +1,7 @@ package com.genersoft.iot.vmp.vmanager.user; import com.genersoft.iot.vmp.conf.exception.ControllerException; +import com.genersoft.iot.vmp.conf.security.JwtUtils; import com.genersoft.iot.vmp.conf.security.SecurityUtils; import com.genersoft.iot.vmp.conf.security.dto.LoginUser; import com.genersoft.iot.vmp.service.IRoleService; @@ -21,10 +22,11 @@ import org.springframework.web.bind.annotation.*; import javax.security.sasl.AuthenticationException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import java.util.List; @Tag(name = "鐢ㄦ埛绠$悊") - @RestController @RequestMapping("/api/user") public class UserController { @@ -43,8 +45,8 @@ @Operation(summary = "鐧诲綍") @Parameter(name = "username", description = "鐢ㄦ埛鍚�", required = true) @Parameter(name = "password", description = "瀵嗙爜锛�32浣峬d5鍔犲瘑锛�", required = true) - public LoginUser login(@RequestParam String username, @RequestParam String password){ - LoginUser user = null; + public LoginUser login(HttpServletRequest request, HttpServletResponse response, @RequestParam String username, @RequestParam String password){ + LoginUser user; try { user = SecurityUtils.login(username, password, authenticationManager); } catch (AuthenticationException e) { @@ -52,10 +54,32 @@ } if (user == null) { throw new ControllerException(ErrorCode.ERROR100.getCode(), "鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒"); + }else { + String jwt = JwtUtils.createToken(username, password); + response.setHeader(JwtUtils.getHeader(), jwt); } return user; } +// @GetMapping("/logout") +// @PostMapping("/logout") +// @Operation(summary = "鐧诲嚭") +// public LoginUser logout(){ +// LoginUser user; +// try { +// user = SecurityUtils.login(username, password, authenticationManager); +// } catch (AuthenticationException e) { +// throw new ControllerException(ErrorCode.ERROR100.getCode(), e.getMessage()); +// } +// if (user == null) { +// throw new ControllerException(ErrorCode.ERROR100.getCode(), "鐢ㄦ埛鍚嶆垨瀵嗙爜閿欒"); +// }else { +// String jwt = JwtUtils.createToken(username, password); +// response.setHeader(JwtUtils.getHeader(), jwt); +// } +// return user; +// } + @PostMapping("/changePassword") @Operation(summary = "淇敼瀵嗙爜") @Parameter(name = "username", description = "鐢ㄦ埛鍚�", required = true) -- Gitblit v1.8.0