browserapi

package
v1.17.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 17, 2025 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package browserapi implements the public API of the browser.example microservice, including clients and data structures.

The browser microservice implements a simple web browser that utilizes the egress proxy.

Index

Constants

View Source
const Hostname = "browser.example"

Hostname is the default hostname of the microservice: browser.example.

Variables

View Source
var (
	URLOfBrowse = httpx.JoinHostAndPath(Hostname, `:443/browse`)
)

Fully-qualified URLs of the microservice's endpoints.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is a lightweight proxy for making unicast calls to the browser.example microservice.

func NewClient

func NewClient(caller service.Publisher) Client

NewClient creates a new unicast client proxy to the browser.example microservice.

func (Client) Browse

func (_c Client) Browse(ctx context.Context, method string, relURL string, contentType string, body any) (res *http.Response, err error)

Browser shows a simple address bar and the source code of a URL.

If a URL is provided, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (Client) ForHost

func (_c Client) ForHost(host string) Client

ForHost returns a copy of the client with a different hostname to be applied to requests.

func (Client) WithOptions added in v1.13.1

func (_c Client) WithOptions(opts ...pub.Option) Client

WithOptions returns a copy of the client with options to be applied to requests.

type MulticastClient

type MulticastClient struct {
	// contains filtered or unexported fields
}

MulticastClient is a lightweight proxy for making multicast calls to the browser.example microservice.

func NewMulticastClient

func NewMulticastClient(caller service.Publisher) MulticastClient

NewMulticastClient creates a new multicast client proxy to the browser.example microservice.

func (MulticastClient) Browse

func (_c MulticastClient) Browse(ctx context.Context, method string, relURL string, contentType string, body any) <-chan *pub.Response

Browser shows a simple address bar and the source code of a URL.

If a URL is provided, it is resolved relative to the URL of the endpoint. If the body if of type io.Reader, []byte or string, it is serialized in binary form. If it is of type url.Values, it is serialized as form data. All other types are serialized as JSON. If a content type is not explicitly provided, an attempt will be made to derive it from the body.

func (MulticastClient) ForHost

func (_c MulticastClient) ForHost(host string) MulticastClient

ForHost returns a copy of the client with a different hostname to be applied to requests.

func (MulticastClient) WithOptions added in v1.13.1

func (_c MulticastClient) WithOptions(opts ...pub.Option) MulticastClient

WithOptions returns a copy of the client with options to be applied to requests.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL