njs-0.7.6
Dmitry Volyntsev
xeioex at nginx.com
Tue Jul 19 16:30:09 UTC 2022
Hello,
I'm glad to announce a new release of NGINX JavaScript module (njs).
Notable new features:
- improved r.args:
Now, duplicate keys are returned as an array, keys are
case-sensitive, both keys and values are percent-decoded.
For example, the query string
'a=1&b=%32&A=3&b=4&B=two%20words'
is converted to r.args as:
{a: "1", b: ["2", "4"], A: "3", B: "two words"}
Learn more about njs:
- Overview and introduction: https://nginx.org/en/docs/njs/
- NGINX JavaScript in Your Web Server Configuration:
https://youtu.be/Jc_L6UffFOs
- Extending NGINX with Custom Code: https://youtu.be/0CVhq4AUU7M
- Using node modules with njs:
https://nginx.org/en/docs/njs/node_modules.html
- Writing njs code using TypeScript definition files:
https://nginx.org/en/docs/njs/typescript.html
Feel free to try it and give us feedback on:
- Github: https://github.com/nginx/njs/issues
- Mailing list: https://mailman.nginx.org/mailman/listinfo/nginx-devel
Additional examples and howtos can be found here:
- Github: https://github.com/nginx/njs-examples
Changes with njs 0.7.6 19 Jul 2022
nginx modules:
*) Feature: improved r.args object. Added support for multiple
arguments with the same key. Added case sensitivity for
keys. Keys and values are percent-decoded now.
*) Bugfix: fixed r.headersOut setter for special headers.
Core:
*) Feature: added Symbol.for() and Symbol.keyfor().
*) Feature: added btoa() and atob() from WHATWG spec.
*) Bugfix: fixed large non-decimal literals.
*) Bugfix: fixed unicode argument trimming in parseInt().
*) Bugfix: fixed break instruction in a try-catch block.
*) Bugfix: fixed async function declaration in CLI.
More information about the nginx
mailing list