Vasiliy Tolstov 280d3a64c9 update go-micro and fix client/selector usage
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2021-01-10 14:47:03 +03:00
2021-01-10 14:47:02 +03:00
2021-01-10 14:47:03 +03:00
2021-01-10 14:47:03 +03:00

HTTP Client

This plugin is a http client for go-micro.

Overview

The http client wraps net/http to provide a robust go-micro client with service discovery, load balancing and streaming. It complies with the go-micro.Client interface.

Usage

Use directly

import "github.com/micro/go-plugins/client/http"

service := micro.NewService(
	micro.Name("my.service"),
	micro.Client(http.NewClient()),
)

Use with flags

import _ "github.com/micro/go-plugins/client/http"
go run main.go --client=http

Call Service

Assuming you have a http service "my.service" with path "/foo/bar"

// new client
client := http.NewClient()

// create request/response
request := client.NewRequest("my.service", "/foo/bar", protoRequest{})
response := new(protoResponse)

// call service
err := client.Call(context.TODO(), request, response)

Look at http_test.go for detailed use.

Encoding

Default protobuf with content-type application/proto

client.NewRequest("service", "/path", protoRequest{})

Json with content-type application/json

client.NewJsonRequest("service", "/path", jsonRequest{})
Description
No description provided
Readme Pixar
v3.9.15 Latest
2024-12-18 20:43:38 +03:00
Languages
Go 100%