|
|
@@ -58,7 +58,7 @@ class HydraService:
|
|
|
# 1. 尝试删除已有的同名 Client(容错即可)
|
|
|
try:
|
|
|
resp_del = requests.delete(
|
|
|
- f"{self.admin_base}/clients/{client_id}", timeout=5
|
|
|
+ f"{self.admin_base}/admin/clients/{client_id}", timeout=5
|
|
|
)
|
|
|
if resp_del.status_code not in (200, 204, 404):
|
|
|
logger.warning(
|
|
|
@@ -70,14 +70,18 @@ class HydraService:
|
|
|
logger.warning("删除 Hydra Client 异常(忽略): %s", e)
|
|
|
|
|
|
# 2. 创建新的 Client
|
|
|
- resp = requests.post(f"{self.admin_base}/clients", json=payload, timeout=5)
|
|
|
+ resp = requests.post(
|
|
|
+ f"{self.admin_base}/admin/clients", json=payload, timeout=5
|
|
|
+ )
|
|
|
if resp.status_code not in (200, 201):
|
|
|
logger.error(
|
|
|
- "在 Hydra 创建 Client 失败: status=%s, body=%s",
|
|
|
+ "在 Hydra 创建 Client 失败: status=%s, body=%s, url=%s, payload=%s",
|
|
|
resp.status_code,
|
|
|
resp.text,
|
|
|
+ f"{self.admin_base}/admin/clients",
|
|
|
+ payload,
|
|
|
)
|
|
|
- raise Exception("创建 Hydra OIDC Client 失败")
|
|
|
+ raise Exception(f"创建 Hydra OIDC Client 失败: {resp.text}")
|
|
|
|
|
|
def get_login_request(self, challenge: str):
|
|
|
try:
|