Go to file
Gorbunov Kirill Andreevich da92725f10 update #153
2024-03-11 11:20:31 +03:00
.github Bump dependabot/fetch-metadata from 1.3.5 to 1.3.6 (#135) 2023-01-30 21:21:45 +03:00
handler update #153 2024-03-11 11:20:31 +03:00
.golangci.yml lint (#57) 2021-04-26 00:43:06 +03:00
.synced add missing files 2020-10-10 00:39:35 +03:00
go.mod handler: fix for latest micro 2023-08-16 10:18:38 +03:00
go.sum handler: fix for latest micro 2023-08-16 10:18:38 +03:00
handler.go update for latest micro changes 2023-08-12 13:53:04 +03:00
http.go micro v4 fix 2023-08-16 15:27:07 +03:00
LICENSE codec rewrite 2020-11-26 01:20:45 +03:00
message.go move to micro v4 2023-04-28 21:59:31 +03:00
options.go update for latest micro changes 2023-08-12 13:53:04 +03:00
README.md move to micro v4 2023-04-28 21:59:31 +03:00
request.go cleanup message stuf from server 2023-05-09 18:38:49 +03:00
server.go fix build 2023-05-09 18:47:56 +03:00
tools.go handler: fix for latest micro 2023-08-16 10:18:38 +03:00
util_test.go move to micro v4 2023-04-28 21:59:31 +03:00
util.go move to micro v4 2023-04-28 21:59:31 +03:00

HTTP Server

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"

	"go.unistack.org/micro/v4/server"
	httpServer "go.unistack.org/micro-server-http/v4"
)

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"

	"go.unistack.org/micro/v4"
	"go.unistack.org/micro/v4/server"
	httpServer "go.unistack.org/micro-server-http/v4"
)

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()
}