[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接口就搭建完成了
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章