diff --git a/example_json_test.go b/example_json_test.go new file mode 100644 index 0000000..40bae56 --- /dev/null +++ b/example_json_test.go @@ -0,0 +1,29 @@ +package wasmhttp_test + +import ( + "encoding/json" + "fmt" + "net/http" + + wasmhttp "github.com/nlepage/go-wasm-http-server" +) + +// Example_JSON demostrates a simple hello JSON service. +func Example_JSON() { + http.HandleFunc("/hello", func(res http.ResponseWriter, req *http.Request) { + params := make(map[string]string) + if err := json.NewDecoder(req.Body).Decode(¶ms); err != nil { + panic(err) + } + + if err := json.NewEncoder(res).Encode(map[string]string{ + "message": fmt.Sprintf("Hello %s!", params["name"]), + }); err != nil { + panic(err) + } + }) + + defer wasmhttp.Serve(nil)() + + // Wait for webpage event or use empty select{} +} diff --git a/serve.go b/serve.go index a646923..4555a15 100644 --- a/serve.go +++ b/serve.go @@ -8,7 +8,7 @@ import ( "github.com/nlepage/go-wasm-http-server/internal/whutil" ) -// Serve serves HTTP requests using handler or http.DefaultServeMux if handler is nil +// Serve serves HTTP requests using handler or http.DefaultServeMux if handler is nil. func Serve(handler http.Handler) func() { h := handler if h == nil {