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