暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Deno揭示了更快、更简单的Web服务器API

云原生数据库 2023-07-21
233
Deno 1.35是JavaScript/TypeScript/WebAssembly运行时的最新版本,被定位为Node.js的替代品。该版本稳定了一个名为Deno.serve()的新API,使构建Web服务器变得更加简单。
 根据Deno项目开发人员的说法,这个API提供了一种“快速和便捷”的方式来创建Web服务器。他们在7月5日宣布了Deno 1.35,称其为一个次要版本。Deno.serve()被描述为一个期待已久的新的Web服务器API,提供了易用性和显著的性能提升。开发人员可以使用这个API通过一行代码来设置一个Web服务器。
    Deno.serve((req) => new Response("hello world"));
    之前的API需要设置一个异步迭代器来处理连接,并处理HTTP事件。Deno.serve()使用Web标准的Request和Response对象,与Web流和其他标准API无缝交互。Deno的开发人员表示,在内部基准测试中,Deno.serve()的吞吐量是类似的Node.js服务器的两倍,具有更好的尾延迟和更高效的内存使用。
    Deno作为一个单一的二进制可执行文件,可以在Linux、Windows和macOS上运行。安装说明可以在Deno的官方网站上找到。Deno 1.35是在5月底发布的Deno 1.34之后推出的,该版本增强了与NPM和Node.js的兼容性。 
    Deno 1.35的其他新功能和改进包括:
    • Web API的变化包括对`Headers`和`Set-Cookie`的支持,以及对`ReadableStream.from()`、`URLSearchParams.delete()`、`URLSearchParams()`等方法的支持。标准库的模块已经重写,以减少内部复杂性并清理公共接口。此外,每个实例都变成了一个不可变的纯JavaScript对象。
    • 新增了一个名为`html`的标准模块。该模块提供了`escape`和`unescape`方法,用于转义和反转义给定字符串中的特殊HTML字符。此外,还添加了一个名为`http/user_agent`的模块,用于从给定的用户代理中检测操作系统、CPU、设备和浏览器类型。
    • 语言服务器进行了一些提升,包括修复了与NPM包和导入映射相关的自动导入的长期问题。
    • 进一步改进了与NPM和Node.js的兼容性,并进行了Node.js模块的更改。
    • 在`Deno`命名空间中添加了一些API,如`Deno.atomicOperation`和`Deno.errors.Filesystemloop`。
    • Deno 1.35使用了Google V8 6 JavaScript/WebAssembly引擎和TypeScript 5.1.6

    文章转载自云原生数据库,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论