import os, requests, time, pymysql BASE = 'http://127.0.0.1:8080/api/v1' conn = pymysql.connect(host=os.environ.get('DB_HOST', '127.0.0.1'), port=int(os.environ.get('DB_PORT', '3307')), user=os.environ.get('DB_USERNAME', 'mydreamjob'), password=os.environ['DB_PASSWORD'], database=os.environ.get('DB_NAME', 'mydreamjob')) r = requests.post(f'{BASE}/auth/sms/send', params={'phone': '13886593964', 'purpose': 'login'}) print(f'SMS send: {r.status_code}') time.sleep(1) with conn.cursor() as c: c.execute('SELECT code FROM sms_verification_codes WHERE phone=%s ORDER BY id DESC LIMIT 1', ('13886593964',)) code = c.fetchone()[0] r = requests.post(f'{BASE}/auth/login', json={'phone': '13886593964', 'code': code}) print(f'Login: {r.status_code}') resp = r.json() role = resp.get('data', {}).get('role', 'N/A') print(f'Role: {role}') token = resp.get('data', {}).get('accessToken', '') r = requests.get(f'{BASE}/auth/me', headers={'Authorization': f'Bearer {token}'}) print(f'Auth/me: {r.status_code} {r.text[:200]}') with conn.cursor() as c: c.execute('SELECT u.role, GROUP_CONCAT(ur.role) FROM users u JOIN user_roles ur ON u.id=ur.user_id WHERE u.phone=%s GROUP BY u.id', ('13886593964',)) print(f'DB: {c.fetchone()}') conn.close()