""" 测试 OAuth 配置 直接访问 OAuth 服务器验证配置 """ import requests from config import settings def test_oauth_config(): """测试 OAuth 配置""" print("=" * 60) print("OAuth 配置测试") print("=" * 60) print(f"\n1. OAuth 配置:") print(f" Base URL: {settings.OAUTH_BASE_URL}") print(f" Client ID: {settings.OAUTH_CLIENT_ID}") print(f" Client Secret: {settings.OAUTH_CLIENT_SECRET}") print(f" Redirect URI: {settings.OAUTH_REDIRECT_URI}") print(f" Authorize Endpoint: {settings.OAUTH_AUTHORIZE_ENDPOINT}") # 构建授权 URL from urllib.parse import urlencode params = { "response_type": "code", "client_id": settings.OAUTH_CLIENT_ID, "redirect_uri": settings.OAUTH_REDIRECT_URI, "scope": settings.OAUTH_SCOPE, "state": "test_state_123" } authorize_url = f"{settings.OAUTH_BASE_URL}{settings.OAUTH_AUTHORIZE_ENDPOINT}" full_url = f"{authorize_url}?{urlencode(params)}" print(f"\n2. 授权 URL:") print(f" {full_url}") print(f"\n3. 测试 OAuth 服务器连接...") try: response = requests.get(settings.OAUTH_BASE_URL, timeout=5) print(f" ✓ OAuth 服务器可访问 (状态码: {response.status_code})") except Exception as e: print(f" ✗ OAuth 服务器不可访问: {e}") print("\n" + "=" * 60) print("请手动访问上面的授权 URL 测试登录流程") print("如果返回 'invalid_client' 错误,请检查:") print("1. Client ID 是否在 OAuth 服务器上注册") print("2. Redirect URI 是否在 OAuth 服务器上配置") print("3. Client Secret 是否正确") print("=" * 60) if __name__ == "__main__": test_oauth_config()