Mercurial > hg > nginx-site
view xml/ru/docs/njs/index.xml @ 2245:87a0e2c73a25
Refactored njs documentation.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Mon, 24 Sep 2018 19:10:29 +0300 |
parents | 467aef18bf12 |
children | 32ba43abf9cd |
line wrap: on
line source
<?xml version="1.0"?> <!-- Copyright (C) Nginx, Inc. --> <!DOCTYPE article SYSTEM "../../../../dtd/article.dtd"> <article name="Сценарный язык njs" link="/ru/docs/njs/index.html" lang="ru" rev="24" toc="no"> <section id="links"> <para> <list type="bullet"> <listitem> <link doc="install.xml"/> </listitem> <listitem> <link doc="njs_changes.xml">Изменения в njs</link> </listitem> <listitem> <link doc="njs_api.xml"/> </listitem> <listitem> <link doc="examples.xml"/> </listitem> <listitem> <link doc="compatibility.xml"/> </listitem> <listitem> <link doc="cli.xml"/> </listitem> </list> </para> <para> <list type="bullet"> <listitem> <link doc="../http/ngx_http_js_module.xml"> ngx_http_js_module</link> </listitem> <listitem> <link doc="../stream/ngx_stream_js_module.xml"> ngx_stream_js_module</link> </listitem> </list> </para> </section> <section id="summary"> <para> njs - это подмножество языка JavaScript, позволяющее расширить функциональность nginx. njs совместим с <link url="http://www.ecma-international.org/ecma-262/5.1/">ECMAScript 5.1</link> (строгий режим) c некоторыми расширениями <link url="http://www.ecma-international.org/ecma-262/6.0/">ECMAScript 6</link> и позже. Совместимость находится в стадии <link doc="compatibility.xml">развития</link>. </para> </section> <section id="usecases" name="Сценарии использования"> <para> <list type="bullet"> <listitem> Комплексное управление доступом и проверка защиты при помощи njs до получения запроса сервером группы </listitem> <listitem> Управление заголовками ответа </listitem> <listitem> Создание гибких асинхронных обработчиков содержимого и фильтров </listitem> </list> Подробнее о сценариях использования см. в <link doc="examples.xml">примерах</link> и <link url="https://www.nginx.com/blog/tag/nginscript/">блогпостах</link>. </para> </section> <section id="example" name="Базовый пример HTTP"> <para> Чтобы использовать njs в nginx, необходимо: <list type="bullet"> <listitem> <para> <link doc="install.xml">установить</link> njs </para> </listitem> <listitem id="hello_world"> <para> создать файл сценария njs, например <path>hello_world.js</path>. Описание свойств и методов языка njs см. в <link doc="njs_api.xml">справочнике</link>. <example> function hello(r) { r.return(200, “Hello world!”); } </example> </para> </listitem> <listitem> <para> в файле <path>nginx.conf</path> включить модуль <link doc="../http/ngx_http_js_module.xml">ngx_http_js_module</link> и указать директиву <link doc="../http/ngx_http_js_module.xml" id="js_include">js_include</link> с файлом сценария <path>hello_world.js</path>: <example> load_module modules/ngx_http_js_module.so; events {} http { js_include hello_world.js; server { listen 8000; location / { js_content hello; } } } </example> </para> </listitem> </list> Также доступна отдельная утилита <link doc="cli.xml">командной строки</link>, которая может использоваться независимо от nginx для разработки и отладки njs. </para> </section> </article>