- 软件介绍
- 相关专题
- 下载地址
AdonisJs简介
AdonisJs是一个web框架,可以用来快速设计新的应用,帮助用户快速开发新的软件。软件需要和Node.js结合使用,通过给软件配置node.js,可以开始创建项目。可以直接在软件中创建API,也可以新建web程序,将软件提供的路由、控制器、视图和模板、表单提交、文件上传、中间件、异常处理等结合起来。AdonisJs功能很多,大家都可以通过这个软件快速部署网站功能,快速搭建HTTP请求方案!
AdonisJs软件功能
路由器
Adonis附带了最快的HTTP路由器之一,而不影响其功能集。群、子域、资源丰富的路由等功能相继推出。
表单验证器
作为TypeScpt的第一个框架,Adonis公开API定义请求体上的运行时验证,同时提取静态类型。模板引擎
在SPA时代,有时编写应用程序进行演示很有趣。模板引擎(Edge)具有构建动态网页所需的所有功能。
开启序列化程序
Adonis是唯一一个对on: API提供一流支持的Node.js框架。如果您的团队决定使用on: API,只需要几分钟就可以将其添加到后端。
SQL优先级
Adonis是为数不多的将SQL视为一流公民的Node.js框架之一。我们支持所有主流的SQL,比如PostgreSQL、MySQL、MSSQL、MaaDB等。
活动记录表格
受Rails和Laravel的启发,Adonis带来了活动记录ORM的实现。ORM为运行复杂的SQL查询和管理关系提供了丰富的API。
移动
Adonis内置了对数据库迁移的支持。随着应用程序的开发,您可以使用JavaScpt代码来创建和更改数据库模式。
种子和工厂
不再需要和队友分享SQL转储。相反,使用数据库播种器快速用虚拟数据填充数据库。
多驱动程序身份验证
没有适合所有应用程序的身份验证过程,因此Adonis允许您在会话、不透明令牌和基本身份验证之间进行选择。
内置RBAC
框架中嵌入了基于角色的访问控制,为您在整个应用程序中提供了细粒度的授权API。
CSRF保护
框架内置了跨站点请求伪造(CSRF)保护,以确保您的应用程序不会意外提交表单。
网罩
Adonis的保护包附带了一套保护措施,以保护您的应用程序免受常见攻击,如XSS攻击、点击劫持和脚本注入。
启用CORS
Adonis使您能够管理跨源HTTP请求的安全设置,以确保只有授权和有效的请求才能通过应用程序。
健康
在容器和排列的时代,健康在资源的有效管理中起着重要的作用。阿多尼斯有一些内在的健康。
统一探头
该框架有一个可嵌入的探测器(开销最小),可以对应用程序的不同区域进行计时,并发现潜在的瓶颈。
AdonisJs软件特色
1.深思熟虑和健壮的SQL ORM。它附带了查询生成器、迁移和活动记录模型。
2.最先进的HTTP路由器之一,具有以下功能:路由组、子域、模式匹配和资源丰富的路由。
3.为运行时验证提供类型和表单验证器。HTTP请求体不需要单独的接口。
4.内置健康模块,可与协调员(如Kubernetes)一起使用。
5.网络安全的焦点。我们保护网站免受许多常见的网络攻击。
AdonisJs教程
中间件
中间件是在HTTP请求到达路由处理器之前执行的一系列功能。使用中间件,您可以执行不同的任务,例如:
验证中间件用于验证用户是否已经登录。如果没有,在请求到达控制器之前取消请求。
中间件,用于从用户的IP地址中找到用户所在的国家/地区,并传递给控制器。
记录HTTP请求的中间件。
或者中间件来转换响应体。
中间件流程
中间件对每个新的HTTP请求执行。
它们从左到右依次执行。
如果一个中间件决定中止请求,所有其他中间件和路由处理程序将不会被执行。
全局中间件全局
中间件对每个HTTP请求的执行顺序与注册时相同。您为要在每个请求上执行的工作创建全局中间件。
Adonis不为没有注册路由的请求执行全局中间件。这意味着,如果您创建一个全局中间件并请求一个不存在的路由,该中间件将永远不会被执行。
为了演示,让我们创建一个中间件,从用户的IP地址中找到用户的国家。中间件位于应用程序/中间件目录中。就像控制器一样,它们也是普通的JavaScpt类。
1.运行下面的ace命令创建一个新的中间件文件。
2.安装geoip-lite。npm依赖项,用于从“IP地址”中查找用户位置。
3.打开新创建的文件,并用下面的代码片段替换它的内容。
应用/中间件/检测国家. ts
4.在start/kernel.ts文件中注册中间件。
start / kernel.ts
5.最后,创建一条路线来显示用户检测到的国家。
开始/结束
刚刚发生了什么?
上面有很多东西,让我们一步一步解码。
使用geoip-lite,我们试图从用户的ip地址中找出用户的国家。
接下来,我们在请求对象上设置国家。当您尝试添加一个动态属时,您将收到TypeScpt错误,但它现在将被忽略,我们稍后会修复它。
中间件完成后,必须调用下一个函数。这样,将执行链中的下一个中间件,最后将执行路由处理程序。
最后,您必须在中注册中间件start/kernel.ts。就像控制器一样,您不需要导入中间件文件,但是您可以将其作为字符串引用传递。
扩展类型
如果您遵循本指南,您会注意到TypeScpt在尝试向请求对象添加运行时时会抱怨,如下图所示。
如果您以前使用过TypeScpt,当您试图在运行时扩展该值时,可能会遇到类似的情况。事实上,任何静态类型的语言都是如此。
因为Adonis的目标之一是可扩展性,所以我们在其中投入了足够多的思想,使您能够轻松地扩展静态类型。为此,让我们在contracts文件夹中创建一个新文件。
打开新创建的文件,并将下面的代码片段粘贴到其中。之后,TypeScpt将停止抱怨。
它是如何工作的?
为了使任何对象或类可扩展,必须将它键入接口。这个概念也被称为接口编程或松散耦合代码。
接下来,您可以使用TypeScpt的声明合并功能来合并属于单个模块并具有相同名称的两个接口的属。
听着,你已经成功扩展了类型。所有的Adonis代码库都是松散耦合的,可以用同样的方式进行扩展。
路由中间件路由中间件的工作方式与全局中间件相同,只是您在特定的路由上执行它们,而不是在每个HTTP请求上执行它们。
一个很好的选择是访问控制中间件,它只适用于一部分路由。为了演示,让我们创建一个中间件来选择性地实现访问控制。
第一步是在start/kernel.ts文件中创建并注册中间件。这次我们需要将其注册为命名中间件。
1.运行以下命令创建一个新的中间件
2.打开新创建的中间件文件,将以下内容粘贴到其中。
3.将其注册为命名中间件。对象键是一个别名,我们将在后面的路由中引用,对象值是中间件类的名称空间。
4.最后,创建一些虚拟路由来测试它们的功能。
它是如何工作的?路由中间件必须先在server . middleware . register name方法中注册,然后才能在路由中使用。
当您调用Route.middleware时,您可以通过用冒号:expression分隔参数来将它们传递给中间件。
参数句柄作为第三个参数传递给函数。
异常处理
Adonis允许您全局处理HTTP请求期间发生的异常。本指南结束时,您将知道:
如何在一个位置捕获所有异常?
使用异常作为控制流。
提出自己可以处理自己的异常。
状态页,只开发错误页等。
全局异常处理程序
全局异常处理程序位于应用程序/异常/处理程序文件中。您可以自定义其位置。adonisrc.json,方法是编辑文件exceptionHandlerName中的值。
异常处理程序类扩展了Adonis/core/httpexception handledonis提供的功能。我们将讨论的所有函数都是从基本的HttpExceptionHandler类继承而来的。
处理方法
每当在HTTP请求周期中引发未处理的异常时,Handle都会调用此方法。handle方法将接收一个错误对象和HTTP上下文。
您可以让基本异常处理程序为您处理异常,除非您想要手动处理特定的异常。示例:
报告方法
报告方法旨在报告/记录调试异常。默认情况下,基本异常处理程序将使用应用程序记录器来记录所有异常。但是,您也可以实现此方法,以其他方式手动处理报告。
错误报告
默认报告方法将报告到达全局异常处理程序的所有异常。尤其是当你不需要破例的时候,获取每个破例的信息可能会非常烦人。出于同样的原因,基本异常处理程序允许您在报告中将错误代码或状态代码列入黑名单。
忽略需要一组错误代码,忽略需要一组错误状态。你可以根据自己的方便选择一个。
自我处理的例外
Adonis提供了一种抛出异常的好方法,通过handle在异常类本身上定义一个方法来处理异常。验证器提出的ValidationException就是一个很好的例子。
您可以通过运行以下ace命令来创建自己的自定义异常。
在文本编辑器中打开新创建的文件,并实现handle方法。
最后,创建一个虚拟路由来测试异常行为。
如果您访问http://localhost: 3333,您一定会看到类似下面截图的消息。
状态页面
基本异常处理程序允许您为特定的状态代码配置要呈现的模板。例如,定义404个状态代码模板和一系列500个状态代码模板。
每当抛出具有状态代码的异常时,异常处理程序将呈现模板404。
使用范围表达式..,我们分配错误。-err模板500到599状态代码。
默认情况下,开发期间不呈现状态页面。但是,您可以使用disablestatuspagessindlopmentflag将其打开。
- 安卓合集
- 软件合集
- 浏览器
- 电脑管家
- 安卓游戏
软件排行榜
热门推荐
-
VMware InstallBuilder Enterprise破解版
v20.12.0 / 347 MB / 简体中文
-
Spark Studio官方版
v2.6.3 / 7.78 MB / 简体中文
-
Yearning SQL审核平台官方版
v2.3.2 / 10.2 MB / 简体中文
-
Protege官方版
v5.5 / 38.3 MB / 简体中文
-
HUAWEI LiteOS Studio官方版
v1.45.6 / 115 MB / 简体中文
-
Huawei LiteOS官方版
v5.0.0 / 87.6 MB / 简体中文
-
C语言代码实例助手官方版
v1.0 / 38.5 MB / 简体中文
-
idle python中文汉化版
v3.7 / 1.62 MB / 简体中文
-
Metabase官方版
v0.37.5 / 45.8 MB / 简体中文
-
编程猫硬件助手官方版
v1.4.1.0 / 39.3 MB / 简体中文
装机必备软件
-
word文档密码破解工具应用软件
-
冰点还原永久免费版系统软件
-
人生日历应用软件
-
一彩送货单管理系统应用软件
-
Process View系统软件
-
开心手机恢复大师其他类别
-
pdf文件阅读器应用软件
-
视频剪辑格式工厂应用软件
-
PhotoMetri应用软件
-
specinker应用软件
-
miwifi驱动驱动工具
-
海洋色音效助手影音软件
-
乐播投屏影音软件
-
seo外链助手网络软件
-
AES安全加密记事本安全相关





