diff --git a/backend/internal/pkg/tlsfingerprint/dialer.go b/backend/internal/pkg/tlsfingerprint/dialer.go index cc78cd14..73646a53 100644 --- a/backend/internal/pkg/tlsfingerprint/dialer.go +++ b/backend/internal/pkg/tlsfingerprint/dialer.go @@ -141,7 +141,7 @@ func NewSOCKS5ProxyDialer(profile *Profile, proxyURL *url.URL) *SOCKS5ProxyDiale // DialTLSContext establishes a TLS connection through SOCKS5 proxy with the configured fingerprint. // Flow: SOCKS5 CONNECT to target -> TLS handshake with utls on the tunnel func (d *SOCKS5ProxyDialer) DialTLSContext(ctx context.Context, network, addr string) (net.Conn, error) { - slog.Debug("tls_fingerprint_socks5_connecting", "proxy", d.proxyURL.Host, "target", addr) + slog.Info("tls_fingerprint_socks5_connecting", "proxy", d.proxyURL.Host, "target", addr) // Step 1: Create SOCKS5 dialer var auth *proxy.Auth @@ -166,18 +166,18 @@ func (d *SOCKS5ProxyDialer) DialTLSContext(ctx context.Context, network, addr st tcpDialer := &net.Dialer{} socksDialer, err := proxy.SOCKS5("tcp", proxyAddr, auth, tcpDialer) if err != nil { - slog.Debug("tls_fingerprint_socks5_dialer_failed", "error", err) + slog.Info("tls_fingerprint_socks5_dialer_failed", "error", err) return nil, fmt.Errorf("create SOCKS5 dialer: %w", err) } // Step 2: Establish SOCKS5 tunnel to target - slog.Debug("tls_fingerprint_socks5_establishing_tunnel", "target", addr) + slog.Info("tls_fingerprint_socks5_establishing_tunnel", "target", addr) conn, err := socksDialer.(proxy.ContextDialer).DialContext(ctx, "tcp", addr) if err != nil { - slog.Debug("tls_fingerprint_socks5_connect_failed", "error", err) + slog.Info("tls_fingerprint_socks5_connect_failed", "error", err) return nil, fmt.Errorf("SOCKS5 connect: %w", err) } - slog.Debug("tls_fingerprint_socks5_tunnel_established") + slog.Info("tls_fingerprint_socks5_tunnel_established", "target", addr) // Step 3: Perform TLS handshake on the tunnel with utls fingerprint return performTLSHandshake(ctx, conn, d.profile, addr) diff --git a/backend/internal/repository/claude_oauth_service.go b/backend/internal/repository/claude_oauth_service.go index 72bcbd81..e18c7a22 100644 --- a/backend/internal/repository/claude_oauth_service.go +++ b/backend/internal/repository/claude_oauth_service.go @@ -279,7 +279,7 @@ func createReqClient(proxyURL string) (*req.Client, error) { } client := req.C(). - SetTimeout(30 * time.Second). + SetTimeout(60 * time.Second). SetCookieJar(nil). // 禁用 CookieJar,确保每次授权都是干净的会话 EnableForceHTTP1() // 强制 HTTP/1.1,避免 H2 升级与自定义 TLS dialer 冲突