[Deno] Deno 从 啥也没有 到 实现第一个API接口

[Deno] Deno 从啥也没有实现第一个API接口

一些废话

Deno 1.0 的发布已经有了约一个月的时间,短时间内也惹来了相当大的争议,当然也早已经有不少目光看准了这个新平台。

它具体能不能代替NodeJs,我觉得短期内还不能;NodeJs十余年的发展已经使得它有了比较庞大的生态,市场也愈发的接近成熟,而Deno的出现,很显然在这个后端语言百花齐放的时代并不是显得那么有竞争力。

据悉 Deno 的特性

  • 使用 Ts 或 Js
  • 去中心化Packages (没有package.json)
  • 安全控制(权限标识符)
  • ES Modules
  • Top level Await
  • 标准库
  • 浏览器兼容的API

流程

  1. 安装环境
  2. 创建并运行

安装环境

更多详细可见
Deno官网

1. 安装 Deno 运行环境(以Windows为例)

  • 打开终端 (PowerShell)
  • 输入以下命令安装软件包:

iwr https://deno.land/x/install/install.ps1 -useb | iex

在这里插入图片描述

1. 安装 Deno 运行环境(以Mac为例)

  • 打开终端
  • 输入以下命令安装软件包

curl -fsSL https://deno.land/x/install/install.sh | sh

  • 如果你装有Homebrew,也可以这样安装:

brew install deno

2. 验证安装

  • 打开终端
  • 输入命令以验证Deno是否安装成功

deno

在这里插入图片描述

  • 出现版本号 即安装成功
  • 会进入编辑模式,按 ctrl + d 退出

创建并运行 Deno

1. 创建文件

  • 创建项目目录,并创建文件,这里我采用的TypeScript,所以文件名暂命名为 01.ts

在这里插入图片描述

  • 引入 官方的http标准库,https://deno.land/std/http/server.ts(已经不是Node的CommonJs格式)
  • 注意:需要 网络 来加载标准库
import { serve } from "https://deno.land/std/http/server.ts";

const s = serve({ port:8008 });

console.log('http://localhost:8008/');

for await (const req of s){
    req.respond({body:"Hello world!\n"});
}

在这里插入图片描述

  • 因为vscode的语法插件不能很好的支持deno,所以会有红色波浪线提示错误,但实际是没有错的。可以在vscode拓展中安装 deno 这个语法插件

2. 运行

  1. 标准运行格式为 deno run ***文件名,但一些操作需要权限,所以要在运行中加入权限标识符
  • --allow-read 读文件权限
  • --allow-write 写文件权限
  • --allow-net 允许网络通信
  • --allow-env 读取环境变量
  1. 这里只需要打开网络通信功能,所以运行命令如下(如遇防火墙拦截,一定要允许

deno run --allow-net 01.ts

在这里插入图片描述

  1. 将会开始下载依赖包,如果没有出错的话,将会显示如下:
    在这里插入图片描述

3. 访问

  • 这时我们打开浏览器,访问 localhost:8008,看到了返回值,至此一个简单的deno API接口就搭建完成了
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_46470372/article/details/106648763