Предоставление общих статических файлов
-
Средство WSGI, которое предоставляет статический контент для сред разработки или простых конфигураций серверов. Его использование довольно просто:
import os from werkzeug.middleware.shared_data import SharedDataMiddleware app = SharedDataMiddleware(app, { '/shared': os.path.join(os.path.dirname(__file__), 'shared') })Содержимое папки
./sharedтеперь будет доступно по адресуhttp://example.com/shared/. Это очень полезно во время разработки, поскольку отдельный медиа-сервер не требуется. Файлы также могут быть смонтированы в корневой папке и продолжать работать с приложением, поскольку средство обработки общих данных перенаправляет все необработанные запросы к приложению, даже если запросы находятся ниже одной из общих папок.Если
pkg_resourcesдоступен, вы также можете указать средству обработки передавать файлы из данных пакета:app = SharedDataMiddleware(app, { '/static': ('myapplication', 'static') })Тогда будет обслуживаться папка
staticв пакете Pythonmyapplication.Необязательный параметр
disallowможет быть списком правилfnmatch()для файлов, которые недоступны через веб. Еслиcacheустановлено в значениеFalse, заголовки кеширования не отправляются.В настоящее время средство обработки не поддерживает имена файлов с символами, отличными от ASCII. Если кодировка файловой системы совпадает с кодировкой URI, это может сработать, но это может произойти случайно. Мы настоятельно рекомендуем использовать только имена файлов ASCII для статических файлов.
Средство обработки будет определять тип MIME с помощью модуля Python
mimetype. Если не удаётся определить кодировку символов, будет использоваться значение по умолчаниюfallback_mimetype.- Параметры
-
-
app (WSGIApplication) – приложение, которое нужно обернуть. Если вы не хотите оборачивать приложение, вы можете передать
NotFound. - exports (Union[Dict[str, Union[str, Tuple[str, str]]]], Iterable[Tuple[str, Union[str, Tuple[str, str]]]]]) – список или словарь экспортированных файлов и папок.
-
disallow (None) – список правил
fnmatch(). - cache (bool) – включить или отключить заголовки кеширования.
- cache_timeout (int) – тайм-аут кеширования в секундах для заголовков.
- fallback_mimetype (str) – тип MIME по умолчанию для неизвестных файлов.
-
app (WSGIApplication) – приложение, которое нужно обернуть. Если вы не хотите оборачивать приложение, вы можете передать
- Тип возвращаемого значения
-
None
Журнал изменений
Изменено в версии 1.0: Значение по умолчанию
fallback_mimetypeсоставляетapplication/octet-stream. Если имя файла похоже на тип MIME текста, к нему добавляется кодировкаutf-8.Добавлена в версии 0.6: Добавлен
fallback_mimetype.Изменено в версии 0.5: Добавлен
cache_timeout.
© 2007–2022 Pallets
Licensed under the BSD 3-clause License.
https://werkzeug.palletsprojects.com/en/2.1.x/middleware/shared_data/