INNER CODE UNIT · Go

func

go-kratos/gateway · client/client.go:29

func (c *client) Close() error {
	c.applier.Cancel()
	return nil
}

func (c *client) RoundTrip(req *http.Request) (resp *http.Response, err error) {
	ctx := req.Context()
	reqOpt, _ := middleware.FromRequestContext(ctx)
	filter, _ := middleware.SelectorFiltersFromContext(ctx)
	n, done, err := c.selector.Select(ctx, selector.WithNodeFilter(filter...))
	if err != nil {
		return nil, err
	}
	reqOpt.CurrentNode = n

	addr := n.Address()
	reqOpt.Backends = append(reqOpt.Backends, addr)
	backendNode := n.(*node)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…