njs 0.5.1 已发布,njs 以 nginx 插件的方式存在,它是 JavaScript/ECMAscript 的子集,实现了大部分的 JavaScript 语言功能,没有完全遵从 ECMAScript 标准,同时抛弃了 JavaScript 比较难懂的部分。njs 不通过 V8 引擎实现,而是通过一个更小、能耗更低、更符合 nginx 应用场景的小虚拟机实现,可以理解成 nginx 为其实现了一套自己的词法解析。
作为 nginx 的插件,njs 的安装方式是重新编译 nginx。
新版本下载:http://nginx.org/en/docs/njs/install.html
此版本主要变更
nginx modules
-
新特性:引入实现 Fetch API 的
ngx.fetch()
方法
下面Response
对象的属性和方法已实现:
arrayBuffer()
,bodyUsed
,json()
,headers
,ok
,redirect
,status
,statusText
,text()
,type
,ur
值得注意的限制:仅支持http://
协议,不处理重定向 -
新特性:添加
js_header_filter
指令 -
Bugfix:修复在 stream 模块的 body filter 中处理缓冲数据的问题
Core
-
Bugfix:修复
Function
构造函数中存在绕过安全模式的问题 -
Bugfix:修复
Date.prototype.toISOString()
使用无效日期值的问题