Function read [src]

Reads data from the response body. Must be called after wait.

Prototype

pub fn read(req: *Request, buffer: []u8) ReadError!usize

Parameters

req: *Requestbuffer: []u8

Possible Errors

ConnectionResetByPeer ReadError
ConnectionTimedOut ReadError
DecompressionFailure
EndOfStream ReadError
HttpChunkInvalid ReadError
HttpHeadersOversize CheckCompleteHeadError
InvalidTrailers
TlsAlert ReadError
TlsFailure ReadError
UnexpectedReadFailure ReadError

Source

pub fn read(req: *Request, buffer: []u8) ReadError!usize { const out_index = switch (req.response.compression) { .deflate => |*deflate| deflate.read(buffer) catch return error.DecompressionFailure, .gzip => |*gzip| gzip.read(buffer) catch return error.DecompressionFailure, // https://github.com/ziglang/zig/issues/18937 //.zstd => |*zstd| zstd.read(buffer) catch return error.DecompressionFailure, else => try req.transferRead(buffer), }; if (out_index > 0) return out_index; while (!req.response.parser.state.isContent()) { // read trailing headers try req.connection.?.fill(); const nchecked = try req.response.parser.checkCompleteHead(req.connection.?.peek()); req.connection.?.drop(@intCast(nchecked)); } return 0; }