Mojolicious::Guides::Cheatsheet
НАЗВАНИЕ
Mojolicious::Guides::Cheatsheet - Справочное руководство
ОБЗОР
Данный документ содержит краткое справочное руководство.
ЗАРЕЗЕРВИРОВАННЫЕ STASH ЗНАЧЕНИЯ
Кроме того, все начинается с mojo.
. Есть несколько stash значений, которые
зарезервированы для маршрутов и рендерера.
action
$r->route('/welcome')->to(action => 'hello');
Действие для обработки.
app
$r->route('/welcome')->to(app => MyApp->new);
Встроенное приложение для обработки.
cb
$r->route('/welcome')->to(cb => sub {...});
Функция обратного вызова для обработки.
class
$r->route('/welcome')->to(class => 'Greeting');
Альтернатива controller
controller
$r->route('/welcome')->to(controller => 'greetings');
Контроллер для обработки.
data
$self->render(data => 'raw bytes');
Направьте сырые байты в ответ.
exception
<%= $exception %>
Объект Mojo::Exception для шаблонов исключений
extends
$self->render(extends => 'template');
Шаблон расширения
format
$self->render(format => 'rss');
Формат рендеринга.
handler
$self->render(handler => 'ep');
Обработчик, используемый для рендеринга.
inline
$self->render(inline => '<%= 1 + 1%>');
Встроенный шаблон для рендерера
json
$self->render(json => {foo => 23});
Включить структуру Perl в ответ формата JSON.
layout
$self->render(layout => 'green');
Главный шаблон для рендерера.
method
$r->route('/welcome')->to(method => 'hello');
Альтернатива action
.
namespace
$r->route('/welcome')->to(namespace => 'TestApp', method => 'lulz');
Пространство имен диспетчеризации.
partial
my $result = $self->render(partial => 1);
Возврат результата рендеринга вместо того чтобы преобразовать его в ответ.
path
$r->route('/welcome')->to(path => '/test', app => MyApp->new);
Базовый путь для использования в диспетчеризации на встроенных приложениях.
status
$self->render(status => 404);
Код ответа.
template
$self->render(template => 'bye');
Шаблон визуализации.
text
$self->render(text => 'Hello World!');
Включить символы в ответ.
ПЕРЕМЕННЫЕ ОКРУЖЕНИЯ
Многие части Mojolicious могут быть настроены с помощью переменных окружения. Переменные для отладки не рассматриваются, так как их применяют только в процессе разработки.
MOJO_APP
Определяет какое будет использоваться Mojolicious или Mojo приложение.
Должно всегда содержать имя класса наподобие MyApp
. Для удобства по
умолчанию содержит Mojo::HelloWorld.
MOJO_APP=MyApp
MOJO_CA_FILE
Путь к файлу с TLS CA доверенностями, должен всегда содержать путь в виде
/etc/tls/cacarts.pem
. Стоить помнить, что для поддержки TLS необходимо
установить модуль IO::Socket::SSL.
MOJO_CA_FILE=/etc/tls/cacerts.pem
MOJO_CERT_FILE
Путь к TLS сертификату, должен всегда содержать путь в виде /etc/tls/client.crt
.
Отметим, что для поддержки TLS необходимо установить IO::Socket::SSL.
MOJO_CERT_FILE=/etc/tls/client.crt
MOJO_CHUNK_SIZE
Размер фрагмента данных в байтах для операций ввода-вывода, большие значения
ускоряют операции ввода-вывода, однако приводят к увеличению используемого
объема памяти, по умолчанию значение 131072
.
MOJO_CHUNK_SIZE=1024
MOJO_CONFIG
Файл конфигурации, используемый в Mojolicious::Plugin::Config и Mojolicious::Plugin::JsonConfig, весьма полезен для тестирования.
MOJO_CONFIG=myapp.conf
MOJO_DNS_SERVER
DNS
server to use for non-blocking lookups.
MOJO_DNS_SERVER=8.8.8.8
MOJO_HOME
Домашний каталог Mojolicious приложения, переменная должна всегда содержать
путь в виде /home/sri/myapp
.
MOJO_HOME=/home/sri/myapp
MOJO_IOWATCHER
Альтернативная реализация Mojo::IOWatcher для пробы.
MOJO_IOWATCHER=Mojo::IOWatcher::EV
MOJO_KEY_FILE
Путь к TLS ключу, должен всегда содержать путь в виде /etc/tls/client.key
.
Обратите внимание, что для поддержки TLS необходимо установить IO::Socket::SSL.
MOJO_KEY_FILE=/etc/tls/client.key
MOJO_LOG_LEVEL
Данная переменная устанавливает уровень подробности ведения журнала
Mojolicious приложением и должна содержать правильный уровень, например
debug
или error
.
MOJO_LOG_LEVEL=debug MOJO_LOG_LEVEL=error
MOJO_MAX_LINE_SIZE
Максимальный размер строки HTTP сообщения для начальной строки и заголовков в
байтах, по умолчанию 10240
.
MOJO_MAX_LINE_SIZE=2048
MOJO_MAX_MEMORY_SIZE
Максимальный размер в байтах HTTP данных для хранения в памяти, при большем
размере данные записываются во временные файлы, по умолчанию 262144
.
MOJO_MAX_MEMORY_SIZE=2048
MOJO_MAX_MESSAGE_SIZE
Максимальный размер HTTP сообщения в байтах, по умолчанию 5242880
.
MOJO_MAX_MESSAGE_SIZE=1024
MOJO_MAX_REDIRECTS
MOJO_MAX_REDIRECTS=3
Максимальное число перенаправлений, которым будет следовать Mojo::UserAgent,
значение по умолчанию 0
.
MOJO_MAX_WEBSOCKET_SIZE
Максимальный размер WebSocket сообщения в байтах
MOJO_MAX_WEBSOCKET_SIZE=1024
MOJO_MODE
Режим запуска Mojolicious приложения, переменная должна содержать правильный
режим в виде development
или production
.
MOJO_MODE=development MOJO_MODE=production
MOJO_NO_BONJOUR
Отключение поддержки Bonjour. Для поддержки Bonjour должен быть установлен модуль Net::Rendezvous::Publish.
MOJO_NO_BONJOUR=1
MOJO_NO_DETECT
Отключение системы обнаружения среды развертывания Mojolicious.
MOJO_NO_DETECT=1
MOJO_NO_IPV6
Отключение поддержки IPv6. Отметим, что для поддержки IPv6 должен быть установлен IO::Socket::IP.
MOJO_NO_IPV6=1
MOJO_NO_TLS
Отключение поддержки TLS может улучшить производительность и сэкономить память. Для поддержки TLS должен быть установлен модуль IO::Socket::SSL.
MOJO_NO_TLS=1
MOJO_PROXY
Активация в Mojo::UserAgent автоматического обнаружения HTTP и HTTPS прокси, из соображений безопасности, опция по умолчанию отключена.
MOJO_PROXY=1
MOJO_REVERSE_PROXY
Активация поддержки обратного прокси-сервера(reverse proxy) для приложения Mojolicious.
Это позволяет Mojolicious автоматически подбирать заголовки
X-Forwarded-For
, X-Forwarded-Host
и X-Forwarded-HTTPS
.
MOJO_REVERSE_PROXY=1
MOJO_STATIC_CLASS
Класс диспетчера статических файлов Mojolicious, должен использоваться
для поиска шаблонов в секции DATA
, по умолчанию main
.
MOJO_STATIC_CLASS=MyApp
MOJO_TEMPLATE_CLASS
Класс, который Mojolicious рендерер должен использовать для нахождения
шаблонов в секции DATA
, по умолчанию main
.
MOJO_TEMPLATE_CLASS=MyApp
MOJO_TMPDIR
Каталог временных файлов, например для больших загружаемых файлов, по умолчанию используется случайная временная директория на данной платформе.
MOJO_TMPDIR=/tmp/mojo
ДОПОЛНИТЕЛЬНО
Вы можете продолжить перейдя на страницу Mojolicious::Guides или на wiki-страничку Mojolicious http://github.com/kraih/mojo/wiki, в котором содержится много документации и примеров от различных авторов.