update 优化 绑定三方与解绑三方校验token是否存在

This commit is contained in:
疯狂的狮子Li 2025-01-17 15:29:51 +08:00
parent a2714fb9f7
commit b38ca837d6

View File

@ -2,6 +2,7 @@ package org.dromara.web.controller;
import cn.dev33.satoken.annotation.SaIgnore; import cn.dev33.satoken.annotation.SaIgnore;
import cn.dev33.satoken.exception.NotLoginException; import cn.dev33.satoken.exception.NotLoginException;
import cn.dev33.satoken.stp.StpUtil;
import cn.hutool.core.codec.Base64; import cn.hutool.core.codec.Base64;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
@ -111,7 +112,7 @@ public class AuthController {
} }
/** /**
* 第三方登录请求 * 获取跳转URL
* *
* @param source 登录来源 * @param source 登录来源
* @return 结果 * @return 结果
@ -133,13 +134,15 @@ public class AuthController {
} }
/** /**
* 第三方登录回调业务处理 绑定授权 * 前端回调绑定授权(需要token)
* *
* @param loginBody 请求体 * @param loginBody 请求体
* @return 结果 * @return 结果
*/ */
@PostMapping("/social/callback") @PostMapping("/social/callback")
public R<Void> socialCallback(@RequestBody SocialLoginBody loginBody) { public R<Void> socialCallback(@RequestBody SocialLoginBody loginBody) {
// 校验token
StpUtil.checkLogin();
// 获取第三方登录信息 // 获取第三方登录信息
AuthResponse<AuthUser> response = SocialUtils.loginAuth( AuthResponse<AuthUser> response = SocialUtils.loginAuth(
loginBody.getSource(), loginBody.getSocialCode(), loginBody.getSource(), loginBody.getSocialCode(),
@ -155,12 +158,14 @@ public class AuthController {
/** /**
* 取消授权 * 取消授权(需要token)
* *
* @param socialId socialId * @param socialId socialId
*/ */
@DeleteMapping(value = "/unlock/{socialId}") @DeleteMapping(value = "/unlock/{socialId}")
public R<Void> unlockSocial(@PathVariable Long socialId) { public R<Void> unlockSocial(@PathVariable Long socialId) {
// 校验token
StpUtil.checkLogin();
Boolean rows = socialUserService.deleteWithValidById(socialId); Boolean rows = socialUserService.deleteWithValidById(socialId);
return rows ? R.ok() : R.fail("取消授权失败"); return rows ? R.ok() : R.fail("取消授权失败");
} }