fix(02-03): capture OAuth code from JSON redirect URLs

Consent returns the callback URL in JSON, so replay can fill {{oauth:code}} from $.data.redirect_to before the token request.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jakub Zych
2026-09-17 13:38:54 +02:00
parent 22f02eed59
commit 8881df9f7a
2 changed files with 35 additions and 0 deletions

View File

@@ -249,6 +249,21 @@ func extractCapture(rule CaptureRule, req Request, resp Response) (string, error
return "", err
}
return scalarString(v), nil
case "response.json.query":
v, err := jsonPathValue([]byte(resp.Body), rule.Path)
if err != nil {
return "", err
}
raw := scalarString(v)
u, err := url.Parse(raw)
if err != nil {
return "", err
}
q := u.Query().Get(rule.Name)
if q == "" {
return "", fmt.Errorf("missing JSON URL query %s", rule.Name)
}
return q, nil
case "response.header":
v := headerValue(resp.Headers, rule.Name)
if v == "" {