增加token校验
parent
1d83f81a73
commit
1fb74cc907
|
@ -8,23 +8,30 @@ import com.bocloud.sms.interfaces.UserService;
|
||||||
import com.bocloud.sms.model.*;
|
import com.bocloud.sms.model.*;
|
||||||
import com.megatron.common.model.*;
|
import com.megatron.common.model.*;
|
||||||
import com.megatron.common.utils.Common;
|
import com.megatron.common.utils.Common;
|
||||||
|
import io.netty.handler.codec.base64.Base64Decoder;
|
||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.time.ZoneId;
|
||||||
|
import java.util.Base64;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author tyl
|
* @author tyl
|
||||||
*/
|
*/
|
||||||
|
@Slf4j
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/v1/users")
|
@RequestMapping("/v1/users")
|
||||||
|
@ -58,8 +65,22 @@ public class UserController {
|
||||||
*/
|
*/
|
||||||
@Operation(summary = "查询用户列表")
|
@Operation(summary = "查询用户列表")
|
||||||
@GetMapping("/manager/external")
|
@GetMapping("/manager/external")
|
||||||
public GeneralResult<GridBean<User>> managerExternalList(Pager pager, @Value(Common.REQ_CONTEXT) RequestContext requestContext) {
|
public GeneralResult<GridBean<User>> managerExternalList(Pager pager, HttpServletRequest request) {
|
||||||
return userService.managerExternalList(pager, requestContext);
|
String token = request.getHeader("Token");
|
||||||
|
String oriString = new String(Base64.getDecoder().decode(token));
|
||||||
|
String[] split = oriString.split(":");
|
||||||
|
Assert.isTrue(split.length == 2, "token验证失败");
|
||||||
|
Assert.isTrue("cmp@v587".equals(split[0]), "token验证失败");
|
||||||
|
long timestamp = Long.parseLong(split[1]);
|
||||||
|
LocalDateTime dateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(timestamp), ZoneId.systemDefault());
|
||||||
|
log.info("token解析时间:{}", dateTime);
|
||||||
|
return userService.managerExternalList(pager, new RequestContext(RequestContext.Catalog.Manager, 1L, 1L, 1L, null));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
String password = "cmp@v587";
|
||||||
|
String token = Base64.getEncoder().encodeToString(String.format("%s:%d",password, System.currentTimeMillis()).getBytes());
|
||||||
|
System.out.println(token);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue