inproc

package
v1.147.0 Latest Latest
Warning

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

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

Documentation

Overview

Package inproc answers a GET against the platform's own routes inside the process, as an anonymous caller on loopback.

A document drawn in the headless renderer loads its references and the served slide runtime from the platform's own origin, and the renderer has no route to the platform: every request it makes is answered by the platform. The tile worker and the PDF export both answer those requests here, so the page gets what a reader's browser would get from the same route and nothing a session would add.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Recorder

type Recorder struct {

	// Body is what the route wrote.
	Body bytes.Buffer
	// contains filtered or unexported fields
}

Recorder is a response a route writes into in-process.

func NewRecorder

func NewRecorder() *Recorder

NewRecorder returns an empty response.

func (*Recorder) Code

func (r *Recorder) Code() int

Code is the status the route answered, 200 when it wrote none.

func (*Recorder) Header

func (r *Recorder) Header() http.Header

Header is the response header the route sets.

func (*Recorder) Write

func (r *Recorder) Write(p []byte) (int, error)

Write collects the body, implying 200 when no status was written.

func (*Recorder) WriteHeader

func (r *Recorder) WriteHeader(status int)

WriteHeader records the first status the route writes.

type Response added in v1.143.0

type Response struct {
	Status int
	Header http.Header
	Body   []byte
}

Response is what a route answered a Read with.

func Read added in v1.143.0

func Read(routes http.Handler, path string, header http.Header, timeout time.Duration) (Response, bool)

Read calls routes for one GET of path, passing on the headers of header that change a public route's answer, and returns the response when the route answered 200 or, for a ranged read, 206. It carries no credentials, so only a route that answers anonymously can answer it.

It is marked as the platform's own request, which the public viewer's rate limiter admits without counting (#1791). Counted, every request presents the one loopback address and shares one bucket, and the reference route in front of a document's files ran it dry partway through a document.

Jump to

Keyboard shortcuts

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