此项目所有内容均使用qwen-code 搭建完成
使用openspec 做交互媒介
- 与 Dify 平台智能体系统集成
- 用户身份验证和授权
- 多轮会话管理
- 会话历史记录
- 实时聊天功能
- 前后端分离架构
本项目已实现多轮会话能力及用户身份验证功能,具体包括:
- 用户注册和登录
- JWT令牌认证
- 会话管理
- 用户权限控制
- 创建和管理多个独立会话
- 会话历史记录
- 会话上下文保持
- 会话状态管理
- 用户会话隔离
POST /api/auth/login- 用户登录POST /api/auth/register- 用户注册POST /api/auth/logout- 用户登出
POST /api/conversations- 创建新会话GET /api/conversations- 获取当前用户的所有会话GET /api/conversations/{conversationId}- 获取特定会话详情PUT /api/conversations/{conversationId}/end- 结束会话
POST /api/authenticated/app/{appId}/chat- 认证用户聊天POST /api/authenticated/app/{appId}/chat-stream- 认证用户聊天(流式响应)GET /api/authenticated/app/{appId}/history- 获取会话历史GET /api/authenticated/app/{appId}/conversations- 获取用户在特定应用的会话列表
- Java 21
- Spring Boot 3.2.0
- Spring WebFlux (响应式编程)
- Spring Data JPA
- Spring Security (JWT认证)
- PostgreSQL 数据库
- Redis (可选,用于会话管理)
- Thymeleaf (前端模板)
- Reactor 模式
- Bootstrap (前端样式)
- 启动 PostgreSQL 数据库
- 配置 application.properties 中的数据库连接信息
- 运行
mvn spring-boot:run启动应用 - 访问
http://localhost:8080进行注册和登录
在 application.properties 中配置以下参数:
# Dify API 配置
dify.api.base-url=https://api.dify.ai/v1
dify.api.default-api-key=your_dify_api_key_here
# 数据库配置
spring.datasource.url=jdbc:postgresql://localhost:5432/dify_integration
spring.datasource.username=postgres
spring.datasource.password=your_password
# JWT 配置
jwt.secret=your_secure_jwt_secret
jwt.expiration=86400000 # 24小时/- 首页/login- 用户登录/register- 用户注册/chat- 聊天界面,支持多会话管理/config- 配置界面
- JWT令牌认证,确保用户身份验证
- 会话隔离,用户只能访问自己的会话
- 请求验证,防止未授权访问
- 密码加密存储
User- 用户信息Conversation- 会话信息AppInteraction- 应用交互记录ApiKey- API密钥存储
- 确保已安装 Java 21 和 Maven
- 配置数据库连接参数
- 设置安全的JWT密钥
- 运行
mvn clean package构建项目 - 运行
java -jar target/dify-integration-1.0.0.jar启动应用