]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
🌐 Add Russian translation for `docs/ru/docs/advanced/response-cookies.md` (#13327)
authorScrollDude <93028356+Stepakinoyan@users.noreply.github.com>
Sat, 15 Feb 2025 11:15:23 +0000 (20:15 +0900)
committerGitHub <noreply@github.com>
Sat, 15 Feb 2025 11:15:23 +0000 (11:15 +0000)
docs/ru/docs/advanced/response-cookies.md [new file with mode: 0644]

diff --git a/docs/ru/docs/advanced/response-cookies.md b/docs/ru/docs/advanced/response-cookies.md
new file mode 100644 (file)
index 0000000..e04ff57
--- /dev/null
@@ -0,0 +1,48 @@
+
+# Cookies в ответе
+
+## Использование параметра `Response`
+
+Вы можете объявить параметр типа `Response` в вашей функции эндпоинта.
+
+Затем установить cookies в этом временном объекте ответа.
+
+{* ../../docs_src/response_cookies/tutorial002.py hl[1, 8:9] *}
+
+После этого можно вернуть любой объект, как и раньше (например, `dict`, объект модели базы данных и так далее).
+
+Если вы указали `response_model`, он всё равно будет использоваться для фильтрации и преобразования возвращаемого объекта.
+
+**FastAPI** извлечет cookies (а также заголовки и коды состояния) из временного ответа и включит их в окончательный ответ, содержащий ваше возвращаемое значение, отфильтрованное через `response_model`.
+
+Вы также можете объявить параметр типа Response в зависимостях и устанавливать cookies (и заголовки) там.
+
+## Возвращение `Response` напрямую
+
+Вы также можете установить cookies, если возвращаете `Response` напрямую в вашем коде.
+
+Для этого создайте объект `Response`, как описано в разделе [Возвращение ответа напрямую](response-directly.md){.target=_blank}.
+
+Затем установите cookies и верните этот объект:
+
+{* ../../docs_src/response_cookies/tutorial001.py hl[10:12] *}
+
+/// tip | Примечание
+Имейте в виду, что если вы возвращаете ответ напрямую, вместо использования параметра `Response`, **FastAPI** отправит его без дополнительной обработки.
+
+Убедитесь, что ваши данные имеют корректный тип. Например, они должны быть совместимы с JSON, если вы используете `JSONResponse`.
+
+Также убедитесь, что вы не отправляете данные, которые должны были быть отфильтрованы через `response_model`.
+///
+
+### Дополнительная информация
+
+/// note | Технические детали
+Вы также можете использовать `from starlette.responses import Response` или `from starlette.responses import JSONResponse`.
+
+**FastAPI** предоставляет `fastapi.responses`, которые являются теми же объектами, что и `starlette.responses`, просто для удобства. Однако большинство доступных типов ответов поступает непосредственно из **Starlette**.
+
+Для установки заголовков и cookies `Response` используется часто, поэтому **FastAPI** также предоставляет его через `fastapi.responses`.
+///
+
+Чтобы увидеть все доступные параметры и настройки, ознакомьтесь с <a href="https://www.starlette.io/responses/#set-cookie" class="external-link" target="_blank">документацией Starlette</a>.