Files
srab/исх/сеть/хттп/ответ.tri
2025-11-26 21:32:41 +03:00

119 lines
4.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
модуль хттп
фн ответ_201*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 201,
состояние: "Created",
туловище: "Тварь успешно создана.",
}
}
фн ответ_204*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 204,
состояние: "No Content",
туловище: "Пожалуйста, оставайтесь на месте. За вами уже выехали.",
}
}
фн ответ_400*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 400,
состояние: "Bad Request",
туловище: "Некорректный запрос. Пожалуйста, проверьте правильность запроса и повторите попытку.",
}
}
фн ответ_401*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 401,
состояние: "Unauthorized",
туловище: "Требуется аутентификация. Пожалуйста, предоставьте свои паспортные данные и повторите запрос.",
}
}
фн ответ_402*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 402,
состояние: "Payment Required",
туловище: "Доступ к запрашиваемому ресурсу требует оплаты. Пожалуйста, свяжитесь с администратором для получения дополнительной информации.",
}
}
фн ответ_403*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 403,
состояние: "Forbidden",
туловище: "Вы были репрессированы. Пожалуйста, перейдите по ссылке: http://сибирь.рф",
}
}
фн ответ_422*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 422,
состояние: "Unprocessable Entity",
туловище: "Неперевариваемая тварь.",
}
}
фн ответ_404*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 404,
состояние: "Not Found",
туловище: "Запрашиваемый ресурс не найден на сервере.",
}
}
фн ответ_500*(): ХттпОтвет {
вернуть ХттпОтвет{
код: 500,
состояние: "Internal Server Error",
туловище: "Просим быть внимательными и бдительными. Оглядывайтесь вверх и по сторонам. Что-то произошло непонятное.",
}
}
фн создать ответ*(база: ХттпОтвет, расширение: ХттпОтвет): ХттпОтвет {
пусть пустой ответ = ХттпОтвет{}
пусть ответ = ХттпОтвет{}
если расширение.код # пустой ответ.код {
ответ.код := расширение.код
} иначе {
ответ.код := база.код
}
если расширение.состояние # пустой ответ.состояние {
ответ.состояние := расширение.состояние
} иначе {
ответ.состояние := база.состояние
}
цикл [номер]заглавие среди база.заглавия {
ответ.заглавия.добавить(заглавие)
}
цикл [номер]заглавие среди расширение.заглавия {
пусть нашлось := ложь
цикл [уемер]существующее среди ответ.заглавия {
если заглавие.имя = существующее.имя {
существующее.значение := заглавие.значение
нашлось := истина
прервать
}
}
если ~нашлось {
ответ.заглавия.добавить(заглавие)
}
}
если расширение.туловище # "" {
ответ.туловище := расширение.туловище
} иначе {
ответ.туловище := база.туловище
}
вернуть ответ
}