mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 18:39:17 +00:00
feat: 实现Claude账户专属绑定功能
- 添加账户类型(dedicated/shared)支持 - API Key可绑定专属账户,优先使用绑定账户 - 未绑定的API Key继续使用共享池和粘性会话 - 修复专属账户下拉框显示问题(isActive类型不匹配) - 修复getBoundAccountName方法未定义错误 - 添加删除账户前的API Key绑定检查 - 完全保留原有粘性会话机制 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -25,8 +25,8 @@ class ClaudeRelayService {
|
||||
// 生成会话哈希用于sticky会话
|
||||
const sessionHash = sessionHelper.generateSessionHash(requestBody);
|
||||
|
||||
// 选择可用的Claude账户(支持sticky会话)
|
||||
const accountId = apiKeyData.claudeAccountId || await claudeAccountService.selectAvailableAccount(sessionHash);
|
||||
// 选择可用的Claude账户(支持专属绑定和sticky会话)
|
||||
const accountId = await claudeAccountService.selectAccountForApiKey(apiKeyData, sessionHash);
|
||||
|
||||
logger.info(`📤 Processing API request for key: ${apiKeyData.name || apiKeyData.id}, account: ${accountId}${sessionHash ? `, session: ${sessionHash}` : ''}`);
|
||||
|
||||
@@ -393,8 +393,8 @@ class ClaudeRelayService {
|
||||
// 生成会话哈希用于sticky会话
|
||||
const sessionHash = sessionHelper.generateSessionHash(requestBody);
|
||||
|
||||
// 选择可用的Claude账户(支持sticky会话)
|
||||
const accountId = apiKeyData.claudeAccountId || await claudeAccountService.selectAvailableAccount(sessionHash);
|
||||
// 选择可用的Claude账户(支持专属绑定和sticky会话)
|
||||
const accountId = await claudeAccountService.selectAccountForApiKey(apiKeyData, sessionHash);
|
||||
|
||||
logger.info(`📡 Processing streaming API request with usage capture for key: ${apiKeyData.name || apiKeyData.id}, account: ${accountId}${sessionHash ? `, session: ${sessionHash}` : ''}`);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user