增加token校验
parent
1d83f81a73
commit
1fb74cc907
|
@ -8,23 +8,30 @@ import com.bocloud.sms.interfaces.UserService;
|
|||
import com.bocloud.sms.model.*;
|
||||
import com.megatron.common.model.*;
|
||||
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.tags.Tag;
|
||||
import jakarta.servlet.http.HttpServletRequest;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
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.Map;
|
||||
|
||||
/**
|
||||
* @author tyl
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/v1/users")
|
||||
|
@ -58,8 +65,22 @@ public class UserController {
|
|||
*/
|
||||
@Operation(summary = "查询用户列表")
|
||||
@GetMapping("/manager/external")
|
||||
public GeneralResult<GridBean<User>> managerExternalList(Pager pager, @Value(Common.REQ_CONTEXT) RequestContext requestContext) {
|
||||
return userService.managerExternalList(pager, requestContext);
|
||||
public GeneralResult<GridBean<User>> managerExternalList(Pager pager, HttpServletRequest request) {
|
||||
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