Compare commits
3 Commits
3e59fb0aac
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 28b3ae0bd2 | |||
| c857c90c80 | |||
| 297b254ae6 |
@@ -127,9 +127,8 @@ public class WebConfig implements WebMvcConfigurer {
|
|||||||
"/user/check",
|
"/user/check",
|
||||||
"/user/wx-login",
|
"/user/wx-login",
|
||||||
"/user/refresh-token",
|
"/user/refresh-token",
|
||||||
// 公开接口 - 作品列表和分类
|
// 公开接口 - 作品相关(由JwtAuthInterceptor内部处理可选认证)
|
||||||
"/work/list",
|
// /work/list, /work/categories, /work/{id} 不在此排除,通过拦截器内部正则匹配实现可选认证
|
||||||
"/work/categories",
|
|
||||||
// 分类和Banner
|
// 分类和Banner
|
||||||
"/category/**",
|
"/category/**",
|
||||||
"/banner/**",
|
"/banner/**",
|
||||||
|
|||||||
@@ -22,13 +22,15 @@ public class JwtAuthInterceptor implements HandlerInterceptor {
|
|||||||
private final JwtUtil jwtUtil;
|
private final JwtUtil jwtUtil;
|
||||||
|
|
||||||
// 公开路径(可选认证:有token则解析,无token也放行)
|
// 公开路径(可选认证:有token则解析,无token也放行)
|
||||||
|
// 匹配: /work/list, /work/categories, /work/{数字ID}
|
||||||
private static final java.util.regex.Pattern OPTIONAL_AUTH_PATTERN =
|
private static final java.util.regex.Pattern OPTIONAL_AUTH_PATTERN =
|
||||||
java.util.regex.Pattern.compile("^/work/\\d+$");
|
java.util.regex.Pattern.compile("^/work/(list|categories|\\d+)$");
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
||||||
String requestURI = request.getRequestURI();
|
// 使用 servletPath(不含context-path),与拦截器路径匹配一致
|
||||||
boolean isOptionalAuthPath = OPTIONAL_AUTH_PATTERN.matcher(requestURI).matches();
|
String servletPath = request.getServletPath();
|
||||||
|
boolean isOptionalAuthPath = OPTIONAL_AUTH_PATTERN.matcher(servletPath).matches();
|
||||||
|
|
||||||
// 从请求头获取token
|
// 从请求头获取token
|
||||||
String authHeader = request.getHeader("Authorization");
|
String authHeader = request.getHeader("Authorization");
|
||||||
|
|||||||
@@ -268,7 +268,7 @@ INSERT INTO `ai_model` (`id`, `provider_id`, `name`, `code`, `type`, `category`,
|
|||||||
'{}',
|
'{}',
|
||||||
'{}',
|
'{}',
|
||||||
'[{"name":"prompt","label":"图片描述","type":"textarea","required":true,"placeholder":"描述你想要生成的图片内容,推荐使用中文,最多8192字符"},{"name":"images","label":"垫图","type":"image","required":false,"placeholder":"可选,上传参考图片(最多3张,支持jpg/png/webp)","maxSize":10,"maxCount":3},{"name":"resolution","label":"图片分辨率","type":"select","options":[{"label":"1024x1024","value":"1024:1024"},{"label":"1248x832(横屏)","value":"1248:832"},{"label":"832x1248(竖屏)","value":"832:1248"},{"label":"768x1024","value":"768:1024"},{"label":"1024x768","value":"1024:768"},{"label":"512x1024","value":"512:1024"},{"label":"1024x512","value":"1024:512"}],"default":"1024:1024"},{"name":"revise","label":"Prompt改写","type":"select","options":[{"label":"开启提示词改写(推荐,约增加20s耗时)","value":1},{"label":"关闭","value":0}],"default":1}]',
|
'[{"name":"prompt","label":"图片描述","type":"textarea","required":true,"placeholder":"描述你想要生成的图片内容,推荐使用中文,最多8192字符"},{"name":"images","label":"垫图","type":"image","required":false,"placeholder":"可选,上传参考图片(最多3张,支持jpg/png/webp)","maxSize":10,"maxCount":3},{"name":"resolution","label":"图片分辨率","type":"select","options":[{"label":"1024x1024","value":"1024:1024"},{"label":"1248x832(横屏)","value":"1248:832"},{"label":"832x1248(竖屏)","value":"832:1248"},{"label":"768x1024","value":"768:1024"},{"label":"1024x768","value":"1024:768"},{"label":"512x1024","value":"512:1024"},{"label":"1024x512","value":"1024:512"}],"default":"1024:1024"},{"name":"revise","label":"Prompt改写","type":"select","options":[{"label":"开启提示词改写(推荐,约增加20s耗时)","value":1},{"label":"关闭","value":0}],"default":1}]',
|
||||||
30, 300, 120, 'tencent_cloud_api', NULL, '{"service":"aiart","host":"aiart.tencentcloudapi.com","version":"2022-12-29","region":"ap-guangzhou","submit_action":"SubmitTextToImageJob","query_action":"QueryTextToImageJob"}', 1, NULL, 'POST', NULL, NULL, NULL, 10000, 60, 300, 1, 'result', 1, 1, 9),
|
30, 300, 120, 'tencent_cloud_api', NULL, '{"service":"aiart","host":"aiart.tencentcloudapi.com","version":"2022-12-29","region":"ap-guangzhou","submit_action":"SubmitTextToImageJob","query_action":"QueryTextToImageJob","default_params":{"LogoAdd":0}}', 1, NULL, 'POST', NULL, NULL, NULL, 10000, 60, 300, 1, 'result', 1, 1, 9),
|
||||||
-- 火山引擎豆包Seedream 4.5图片生成(同步任务,用户端)
|
-- 火山引擎豆包Seedream 4.5图片生成(同步任务,用户端)
|
||||||
-- 接口: POST /api/v3/images/generations
|
-- 接口: POST /api/v3/images/generations
|
||||||
-- 返回: {"data":[{"url":"xxx"}]}
|
-- 返回: {"data":[{"url":"xxx"}]}
|
||||||
|
|||||||
Reference in New Issue
Block a user