Добавил метод json() в starlarkResponse в
файле internal/builtins/http.go:175-185. Теперь response объект имеет: - code - код ответа - headers - заголовки - body - reader для чтения тела ответа - json() - метод для парсинга JSON из тела ответа
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -5,4 +5,5 @@
|
||||
.gigaide/
|
||||
.idea/
|
||||
.claude/
|
||||
CLAUDE.md
|
||||
CLAUDE.md
|
||||
test*
|
@@ -173,10 +173,14 @@ func makeRequest(name, method string, args starlark.Tuple, kwargs []starlark.Tup
|
||||
}
|
||||
|
||||
func starlarkResponse(res *http.Response) *starlarkstruct.Struct {
|
||||
reader := newStarlarkReader(res.Body)
|
||||
return starlarkstruct.FromStringDict(starlarkstruct.Default, starlark.StringDict{
|
||||
"code": starlark.MakeInt(res.StatusCode),
|
||||
"headers": starlarkStringSliceMap(res.Header),
|
||||
"body": newStarlarkReader(res.Body),
|
||||
"body": reader,
|
||||
"json": starlark.NewBuiltin("response.json", func(thread *starlark.Thread, b *starlark.Builtin, args starlark.Tuple, kwargs []starlark.Tuple) (starlark.Value, error) {
|
||||
return reader.readJSON(thread, b, args, kwargs)
|
||||
}),
|
||||
})
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user