fix(qualys): extrait responseCode/errorMessage/errorResolution du XML Qualys dans le message d erreur (au lieu de tronquer 200 chars du XML brut)
This commit is contained in:
parent
e7eecf0346
commit
5c402e5b63
@ -70,9 +70,17 @@ def search_assets_api(db, query, field="name", operator="CONTAINS", force_refres
|
|||||||
return {"ok": False, "msg": f"Erreur API: {e}", "assets": []}
|
return {"ok": False, "msg": f"Erreur API: {e}", "assets": []}
|
||||||
|
|
||||||
if r.status_code != 200 or "SUCCESS" not in r.text:
|
if r.status_code != 200 or "SUCCESS" not in r.text:
|
||||||
# Inclure le début du body pour faciliter le diagnostic
|
# Inclure le détail Qualys (errorMessage / errorResolution sont dans le XML)
|
||||||
|
import re as _re
|
||||||
|
err_msg = ""
|
||||||
|
m = _re.search(r"<errorMessage>([^<]+)</errorMessage>", r.text or "")
|
||||||
|
if m: err_msg += " | errorMessage: " + m.group(1).strip()
|
||||||
|
m = _re.search(r"<errorResolution>([^<]+)</errorResolution>", r.text or "")
|
||||||
|
if m: err_msg += " | errorResolution: " + m.group(1).strip()
|
||||||
|
m = _re.search(r"<responseCode>([^<]+)</responseCode>", r.text or "")
|
||||||
|
if m: err_msg = " [" + m.group(1).strip() + "]" + err_msg
|
||||||
return {"ok": False,
|
return {"ok": False,
|
||||||
"msg": f"API HTTP {r.status_code} — {r.text[:200]}",
|
"msg": f"API HTTP {r.status_code}{err_msg}",
|
||||||
"assets": []}
|
"assets": []}
|
||||||
|
|
||||||
assets = _parse_assets_full(r.text)
|
assets = _parse_assets_full(r.text)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user