📜  deno 网络服务器 - TypeScript (1)

📅  最后修改于: 2023-12-03 15:14:40.111000             🧑  作者: Mango

Deno网络服务器 - TypeScript

Deno是一个现代化的JavaScript和TypeScript运行时,它内置了HTTP和HTTPS网络库,使得构建网络应用变得非常简单和方便。

在本指南中,我们将介绍如何使用Deno网络服务器来构建自己的Web应用。

安装Deno

要安装Deno,只需访问Deno官网并遵循指示即可。

编写一个简单的Web服务器

要编写一个简单的Web服务器,首先要创建一个新文件,例如server.ts

在文件中,我们需要导入Deno的网络库,然后使用serve()方法创建一个新的服务器实例。

import { serve } from "https://deno.land/std/http/server.ts";

const server = serve({ port: 8000 });
console.log("Server running on port 8000");

for await (const req of server) {
  req.respond({ body: "Hello, world!" });
}

在上面的代码中,我们定义了一个名为server的服务器实例,并将其绑定到本地端口8000。然后,我们使用Deno的异步for循环来监听来自客户端的HTTP请求并返回“Hello, world!”的响应。

运行Web服务器

运行服务器很简单,只需在终端中运行以下命令:

deno run --allow-net server.ts

注意,我们使用了--allow-net标志来允许Deno访问网络。这是因为Deno的默认沙箱限制了网络访问。

然后,在浏览器中访问http://localhost:8000,你应该能够看到“Hello, world!”的响应。

添加路由

在实际应用中,我们需要实现不同的路由以处理不同的请求。

在Deno中,我们可以使用switch()语句来定义路由,例如:

for await (const req of server) {
  switch (req.url) {
    case "/":
      req.respond({ body: "Welcome to my homepage!" });
      break;
    case "/about":
      req.respond({ body: "About me" });
      break;
    default:
      req.respond({ body: "404 Not Found" });
      break;
  }
}
结论

Deno网络服务器是构建现代Web应用程序的强大工具,它使用TypeScript语言和Deno运行时来提供快速、简单和安全的网络应用程序构建体验。希望上述内容对您有所启发,Happy Coding!

参考资料

Deno官网

Deno标准库文档

Deno中文网