https://gist.github.com/hodzanassredin/f86b1536ea947410b239132b68728851
или так
MODULE DemoParsingJson; IMPORT Log, Files, HttpClient, AosStreams, DS := StringsDyn, M := YSonModels, YSonConverters; TYPE Handler = PROCEDURE (f: Files.File; data: ARRAY OF CHAR); PROCEDURE Parse (stream: AosStreams.Reader); VAR ch: SHORTCHAR; buf: DS.DynString; v0: M.Value; v, item: M.Value; res: INTEGER; BEGIN buf := DS.Create(""); WHILE stream.GetChar(ch) DO buf.AddChar(ch) END; Log.Ln; Log.Ln; v0 := YSonConverters.Load(buf, res); IF v0 # NIL THEN WITH v0: M.Holder DO v := v0.First(); WHILE v # NIL DO WITH v: M.Object DO item := v.Find("created_at"); IF item # NIL THEN WITH item: M.String DO Log.String("created at: " + item.Get()); Log.Ln ELSE END END; item := v.Find("state"); IF item # NIL THEN WITH item: M.String DO Log.String("state: " + item.Get()); Log.Ln ELSE END END; item := v.Find("url"); IF item # NIL THEN WITH item: M.String DO Log.String("url: " + item.Get()); Log.Ln; Log.Ln ELSE END END; ELSE END; v := v0.Next(v) END ELSE END ELSE Log.String("Не могу распарсить... Код ошибки: "); Log.Int(res); Log.Ln END END Parse; PROCEDURE Start*; VAR client: HttpClient.HTTPConnection; r: AosStreams.Reader; res: INTEGER; BEGIN NEW(client); client.New(); client.Get("https://api.github.com/repos/facebook/react/issues", TRUE, r, res); IF res = HttpClient.Ok THEN Parse(r) ELSE Log.Int(client.responseHeader.statuscode); Log.String(LONG(client.responseHeader.reasonphrase)); Log.Ln; END; END Start; END DemoParsingJson.