pugnack 545e372b82
Some checks failed
coverage / build (push) Has been skipped
test / test (push) Successful in 3m20s
sync / sync (push) Has been cancelled
breaking change: modify API for working with response metadata (#213)
* implement functions to append/get metadata and set/get status code

* сhanged behavior to return nil instead of empty metadata for getResponseMetadata()

* сhanged work with HTTP headers to use direct array assignment instead of for-range

* fix linters

* fix meter handler

* fix uninitialized response metadata for incoming context

* removed a useless test

* metrics handler has been fixed to work with compressed data
2025-05-03 12:09:52 +03:00
2025-05-03 10:40:19 +03:00
2024-03-09 10:06:13 +03:00
2025-04-27 21:38:39 +03:00
2020-10-10 00:39:35 +03:00
2025-04-29 14:25:28 +03:00
2025-03-02 12:33:55 +03:00
2020-11-26 01:20:45 +03:00
2025-04-27 18:50:16 +00:00
2025-03-02 12:33:55 +03:00
2025-03-02 12:33:55 +03:00
2025-03-02 12:33:55 +03:00
2025-04-29 14:25:28 +03:00

HTTP Server

Coverage

The HTTP Server is a go-micro.Server. It's a partial implementation which strips out codecs, transports, etc but enables you to create a HTTP Server that could potentially be used for REST based API services.

Usage

import (
	"net/http"

	"github.com/unistack-org/micro/v3/server"
	httpServer "github.com/unistack-org/micro-server-http"
)

func main() {
	srv := httpServer.NewServer(
		server.Name("helloworld"),
	)

	mux := http.NewServeMux()
	mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		w.Write([]byte(`hello world`))
	})

	hd := srv.NewHandler(mux)

	srv.Handle(hd)
	srv.Start()
	srv.Register()
}

Or as part of a service

import (
	"net/http"

	"github.com/unistack-org/micro/v3"
	"github.com/unistack-org/micro/v3/server"
	httpServer "github.com/unistack-org/micro-server-http"
)

func main() {
	srv := httpServer.NewServer(
		server.Name("helloworld"),
	)

	mux := http.NewServeMux()
	mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		w.Write([]byte(`hello world`))
	})

	hd := srv.NewHandler(mux)

	srv.Handle(hd)

	service := micro.NewService(
		micro.Server(srv),
	)
	service.Init()
	service.Run()
}
Description
No description provided
Readme 3 MiB
v4.1.4 Latest
2025-08-04 21:49:55 +03:00
Languages
Go 94.9%
HTML 4.8%
CSS 0.3%