app

package
v0.0.0-...-f3e401e Latest Latest
Warning

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

Go to latest
Published: Apr 4, 2024 License: BSD-3-Clause Imports: 17 Imported by: 3

Documentation

Overview

Package app implements the performance data storage server. Combine an App with a database and filesystem to get an HTTP server.

Index

Constants

This section is empty.

Variables

View Source
var ErrResponseWritten = errors.New("response written")

ErrResponseWritten can be returned by App.Auth to abort the normal /upload handling.

Functions

This section is empty.

Types

type App

type App struct {
	DB *db.DB
	FS fs.FS

	// Auth obtains the username for the request.
	// If necessary, it can write its own response (e.g. a
	// redirect) and return ErrResponseWritten.
	Auth func(http.ResponseWriter, *http.Request) (string, error)

	// ViewURLBase will be used to construct a URL to return as
	// "viewurl" in the response from /upload. If it is non-empty,
	// the upload ID will be appended to ViewURLBase.
	ViewURLBase string

	// BaseDir is the directory containing the "template" directory.
	// If empty, the current directory will be used.
	BaseDir string
}

App manages the storage server logic. Construct an App instance using a literal with DB and FS objects and call RegisterOnMux to connect it with an HTTP server.

func (*App) RegisterOnMux

func (a *App) RegisterOnMux(mux *http.ServeMux)

RegisterOnMux registers the app's URLs on mux.

Jump to

Keyboard shortcuts

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