methodrefusal

package
v0.5.0 Latest Latest
Warning

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

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

Documentation

Overview

Package methodrefusal — ОДНА форма отказа на неверный метод HTTP для путей службы, обслуживаемых собственными обработчиками (решение R36 п. 3, задача PRO-Robotech/kaname#261; распространено на слушатель выдачи решением Р12 приёмки темпа церемонии, задача PRO-Robotech/kaname#524).

Предмет

Путь есть, метод не тот. Слушатель выдачи отвечал на это формами протокола (`{"error":"invalid_request"}`) и голым текстом (`{"error":"method_not_allowed"}` под `text/plain`), а полоса входа и REST-фронт — `405` с кодом `12`. Код `3` и `invalid_request` клиент читает как «исправь тело» и правит тело вместо метода; общий обработчик `405` не написать, пока у пути своя форма.

Форма

`405`, `Content-Type: application/json`, `Allow` с методами пути и тело побайтово `{"code":12,"message":"method not allowed","details":[]}` — то же, что печатает полоса входа (`loginlanehttp`). Код `12` (`UNIMPLEMENTED`) — тот, что производит маршрутизатор REST-фронта: клиент, ключующийся на `code`, читает один класс отказа одинаково по любому адресу службы.

Почему тело литералом

Побайтовое равенство с полосой входа — часть контракта (KN-PACE-46): тело пишется готовыми байтами, а не кодировщиком, у которого свой перевод строки и свои пробелы.

Index

Constants

View Source
const Body = `{"code":12,"message":"` + Text + `","details":[]}`

Body — тело отказа побайтово.

View Source
const Text = "method not allowed"

Text — текст отказа, дословно текст полосы входа и REST-фронта.

Variables

This section is empty.

Functions

func Write

func Write(w http.ResponseWriter, allowed ...string)

Write отвечает формой отказа на неверный метод. allowed — методы, которые путь обслуживает; их порядок — порядок заголовка `Allow`.

Types

This section is empty.

Jump to

Keyboard shortcuts

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