javascript in nginx

Михаил Монашёв postmaster на softsearch.ru
Ср Сен 23 20:24:13 UTC 2015


Здравствуйте, Igor.

> Репозитарий:
> http://hg.nginx.org/njs/
> Примеры использования:
> https://www.nginx.com/blog/launching-nginscript-and-looking-ahead

> Интересно ваше мнение об JS-интерфейсе к внутренностям nginx’а.

В примерах вместо return s; пишется просто s; , что не очень наглядно.
Сложно глазами найти места, где происходит выход и возврат значения. В
примерах,  да  и  вообще,  ИМХО  возврат  значения лучше писать явно с
return .

$r.method   выглядит  по  перловому  как-то.  :-)  Вариант  с  заранее
предопределёнными  переменными  req  и  resp  тоже не очень, но в Ноде
такие имена прижились и понятны.

Было  бы  удобно весь код скрипта заключать не в двойные кавычки, а то
помнить,  что надо писать \" в коде неудобно. Хотя это по синтаксису и
совместимо  с синтаксисом конфига, но именно программировать геморно и
будет  вести  к  ошибкам.  Может предусмотреть ещё какой-то символ для
задания  начала  и  конца  значения  в конфиге? Например, те же {} тут
будут более чем уместны и понятны.

Было бы здорово, наверное, писать что-то вроде
js_set scripts/set_headers.js
js_run scripts/print_headers.js

Тут  http://hg.nginx.org/njs/file/11d4d66851ed/README  видимо  ошибка:
res.contentLength = 11; , ибо дли ответа не 11 байт.

В какой кодировке пишутся скрипты?

Какие функции из обычного JavaScript-а поддерживаются?

Будет  ли язык упрощённым JS-ом или может пойти в сторону Go или Dart,
например?

Можно  ли  вместо  кода  писать скомпиленный бинарный код, чтобы можно
было скрывать исходники и затруднять их чтение?

Вообще,  это  конечно  прорыв.  И  то, что пишется своя VM - это очень
правильно.  И  язык  выбран  тоже правильно. В JS подкупает простота и
популярность.  Я  очень  боялся,  что  выйдет Нода, которая из гомна и
палок. И рад, что вышло иначе. Вышел nginx. :-)

-- 
С уважением,
 Михаил                          mailto:postmaster at softsearch.ru



Подробная информация о списке рассылки nginx-ru