I'm trying to write a response, but I think there's something wrong with how I'm creating my write buffer or the writer. This was using 0.15.1 version
while (true) {
const client = listener.accept() catch |err| {
std.log.err("Failed to accept connection: {}", .{err});
continue;
};
defer client.stream.close();
var reader_buffer: [4096]u8 = undefined;
var writer_buffer: [8192]u8 = undefined;
// Wrap the client stream in mutable reader and writer interfaces
var stream_reader = client.stream.reader(&reader_buffer);
const reader = stream_reader.interface();
var writer = client.stream.writer(&writer_buffer);
var http_server = http.Server.init(reader, &writer);
while (true) {
var request = try http_server.receiveHead();
switch (request.head.method) {
.GET => {
request.respond("Hello World\n", .{
.status = .ok,
.extra_headers = &[_]http.Header{
.{ .name = "Content-Type", .value = "text/plain" },
},
});
},
else => {
try request.respond("Method not allowed", .{ .status = .method_not_allowed });
};
},
}
}
}