From e0ce5c6341134990d1be0760d594f3f42f0db63e Mon Sep 17 00:00:00 2001 From: Nicolas Lepage <19571875+nlepage@users.noreply.github.com> Date: Tue, 26 Nov 2019 23:50:43 +0100 Subject: [PATCH] :construction: --- response_writer.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/response_writer.go b/response_writer.go index a87cd56..bfd2598 100644 --- a/response_writer.go +++ b/response_writer.go @@ -24,18 +24,22 @@ func NewResponseWriter() *ResponseWriter { var _ http.ResponseWriter = (*ResponseWriter)(nil) +// Header implements http.ResponseWriter.Header func (rw *ResponseWriter) Header() http.Header { return rw.header } +// Write implements http.ResponseWriter.Write func (rw *ResponseWriter) Write(p []byte) (int, error) { return rw.buf.Write(p) } +// WriteHeader implements http.ResponseWriter.WriteHeader func (rw *ResponseWriter) WriteHeader(statusCode int) { rw.statusCode = statusCode } +// JSResponse builds and returns the equivalent JS Response func (rw *ResponseWriter) JSResponse() js.Value { init := js.Global().Get("Object").New() @@ -43,7 +47,9 @@ func (rw *ResponseWriter) JSResponse() js.Value { init.Set("status", rw.statusCode) } - //FIXME headers + if len(rw.header) != 0 { + init.Set("headers", map[string][]string(rw.header)) + } jsBody := js.Global().Get("Uint8Array").New(rw.buf.Len()) js.CopyBytesToJS(jsBody, rw.buf.Bytes())