天野 CRUD REST API Example

1+

天野 CRUD REST API

今天,我们将用简单的示例创建一个Deno CRUD REST API。最近,我介绍了有关 VDOM(Vue,Deno,Oak和MongodB) 堆栈应用程序。 Deno是JavaScript和TypeScript的婴儿安全运行时。许多读者要求我写一篇文章,以使用Deno创建rest api。

天野 CRUD REST API Example
天野 CRUD REST API Example

通常,如果您熟悉Node.js,那么Deno就是这样。除了它’在很多方面都有所改善’从底部到顶部创建,以更好地实现Node.js。

为什么我在节点上使用Deno? ?

由于Deno和Node.js具有相同的目的,因此’可以直接比较两者。

节点 天野
发动机 V8 V8
写在 C ++& JavaScript 锈& Typescript
包裹管理 包管理器:npm 使用网址
导入包装 CommonJS语法 ES模块
安全 完全访问 许可访问
TypeScript支持 没有内置 内置

好吧,酷!那么,如何在系统中安装Deno? ?

安装最新版本

带壳:


使用PowerShell:


有关更多详细信息,请检查 天野’的官方安装指南。

安装后使用以下命令检查Deno的版本 地–version

地--version
地–version

现在您可以运行 地repl 打开REPL(读取-执行-打印循环)并开始键入一些JavaScript。

地repl
地repl

让’运行一些Deno示例

入口点可以是 .js 文件, 文件或什至指向应用程序入口点的URL,Deno将下载,编译并为您运行:

例如: 地run //deno.land/std/examples/welcome.ts

天野 CRUD REST API,Deno CRUD REST API示例

从操场出来并构建一个API?

就像在 我们之前的例子,我们’将使用Oak框架和Typescript(如果需要,也可以使用JavaScript)。

首先,创建三个文件 应用程式。, 路由器。控制器。

在里面 应用程式。  文件,我们必须提高 应用//deno.land/x/oak/mod.ts 和 the router from ‘。/路由器。‘.

然后设置端口和主机


之后,添加router.ts的代码。在这个文件中,我们必须导入 路由器//deno.land/x/oak/mod.ts 并创建路线。


在上述代码的第2行,功能 得到Books, 得到Book, addBook, updateBook删除Book 是从本地文件导入的’s just we haven’t created them yet.

在控制器中创建这些功能之前,让我先完成 应用程式。 file firstly.


现在它’s time to create 控制器 在此文件中,让我们定义书籍的界面 我订了,然后声明一个book对象的初始数组:

在哪里实现的功能 控制器。?

现在我们’将实现我们在我们定义的功能 路由器。.

功能 路线 描述
得到Books GET /书籍 归还所有书
得到Books GET / books / {isbn} 还书
addBook POST /书籍 加一本书
updateBook 放置/ books / {isbn} 更新一本书
删除Book 删除/ books / {isbn} 删除一本书

得到Books:返回列表中的所有书籍。


返回列表中的所有书籍。
返回列表中的所有书籍。

得到Book:按其isbn返回一本书,如果找不到则返回错误消息。


通过isbn返回一本书,如果找不到则返回错误消息
通过isbn返回一本书,如果找不到则返回错误消息

addBook:将书籍添加到书籍清单。


新增书籍
新增书籍

图书添加后
图书添加后

updateBook:更新一本书(如果存在),否则返回错误消息。


更新书籍
更新书籍

更新书籍后
更新书籍后

删除Book:从书籍清单中删除书籍。


删除书籍
删除书籍

删除图书后
删除图书后

在这里,我们完成 控制器。。完整的代码是:

为什么 searchBookByIsbn 用于 控制器。?

这是一个通过ISBN ID查找图书的辅助函数,我们在第26行调用此函数。

立即运行Deno代码

从GitHub下载源代码

如果您喜欢这篇文章,请放心与他人分享。

 

1+
概要
天野 CRUD REST API Example
文章名
天野 CRUD REST API Example
描述
今天,我们将用简单的示例创建一个Deno CRUD REST API。最近,我介绍了有关VDOM(Vue,Deno,Oak和MongodB)堆栈的教程。
作者
达斯
发布者名称
达斯
出版商徽标