httputil

package
v0.7.5 Latest Latest
Warning

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

Go to latest
Published: Jul 18, 2026 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

Package httputil holds tiny HTTP helpers shared across the REST and /healthz handlers.

Index

Constants

View Source
const WarningHeader = "X-Memini-Warning"

WarningHeader carries a non-fatal advisory about how the server interpreted a request — something the caller almost certainly wants to know but which is not an error, so it must not fail the request. Clients surface it; the UI renders it as a banner.

Variables

This section is empty.

Functions

func Error

func Error(w http.ResponseWriter, status int, msg string)

Error writes a {"error": msg} JSON body with the given status.

func HomeConflictWarning added in v0.6.8

func HomeConflictWarning(keyName, keyHome, headerHome string) string

HomeConflictWarning describes a home-namespace header the server overrode because the request's API key is bound to a home namespace of its own. The key's binding is identity, so it always wins — but silently ignoring an explicit header is exactly the kind of thing that leaves someone staring at the wrong namespace's memories wondering why. Returns "" when there is no conflict (no binding, no header, or they agree).

func JSON

func JSON(w http.ResponseWriter, status int, body any)

JSON writes status and body as application/json, ignoring the encoder's write error (the response status has already been sent).

func NormalizeNamespace added in v0.6.0

func NormalizeNamespace(ns string) string

NormalizeNamespace trims surrounding whitespace and slashes and collapses duplicate separators into the canonical form stored namespaces use, so " work//memini/" addresses the same rows as "work/memini". It does not validate; pair with ValidateNamespace.

func ValidateNamespace

func ValidateNamespace(ns string) error

ValidateNamespace returns a non-nil error when ns is not a valid namespace. Valid namespaces are 1–256 bytes, contain no NUL character.

Types

This section is empty.

Jump to

Keyboard shortcuts

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