From 25df88d0ab9d7444ed1d162b9efa1259ac2f6f66 Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期一, 27 四月 2026 10:13:53 +0800
Subject: [PATCH] 小程序对接finish

---
 backend/src/main/java/com/sinata/appointment/config/SaTokenConfigure.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/backend/src/main/java/com/sinata/appointment/config/SaTokenConfigure.java b/backend/src/main/java/com/sinata/appointment/config/SaTokenConfigure.java
index 6667019..5b2810f 100644
--- a/backend/src/main/java/com/sinata/appointment/config/SaTokenConfigure.java
+++ b/backend/src/main/java/com/sinata/appointment/config/SaTokenConfigure.java
@@ -2,8 +2,11 @@
 
 import cn.dev33.satoken.interceptor.SaInterceptor;
 import cn.dev33.satoken.stp.StpUtil;
+import jakarta.servlet.http.HttpServletRequest;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.DependsOn;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
 import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
 
@@ -16,10 +19,22 @@
         // 小程序域:StpLogic("mini"),与后台 StpUtil 完全隔离(密码仅后台有效)
         registry.addInterceptor(
                         new SaInterceptor(
-                                handle ->
-                                        MiniStpUtil.checkLogin()))
+                                handle -> {
+                                    ServletRequestAttributes attributes =
+                                            (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+                                    HttpServletRequest request =
+                                            attributes == null ? null : attributes.getRequest();
+                                    if (request != null && "OPTIONS".equalsIgnoreCase(request.getMethod())) {
+                                        return;
+                                    }
+                                    MiniStpUtil.checkLogin();
+                                }))
                 .addPathPatterns("/api/mini/**")
-                .excludePathPatterns("/api/mini/auth/login", "/api/mini/auth/phone-login")
+                .excludePathPatterns(
+                        "/api/mini/auth/login",
+                        "/api/mini/auth/phone-login",
+                        "/api/mini/appointments/shared/detail",
+                        "/api/mini/appointments/shared/visitor-codes")
                 .order(0);
 
         // 平台管理端:sys_user 账密

--
Gitblit v1.7.1