这篇文章给大家分享的是有关高雅从零搭建到Api实现项目的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
<强>什么是高雅吗? 强>
亚是一个新网站的框架,由表达幕后的原班人马打造,致力于成为web应用Api和开发领域中的一个更小,更富有表现力,更健壮的基石。通过利用异步函数,高雅帮你丢弃回调函数,并有力地增强错误处理。高雅并没有捆绑任何中间件,而是提供了一套优雅的方法,帮助您快速而愉快地编写服务端应用程序。
<强>高雅与表达强>
高雅使用承诺和异步函数来摆脱回调地狱的应用并简化错误处理。它暴露自己ctx.request和ctx。响应对象而不是节点点播和res对象。另一方面,表达使用其他属性和方法扩充节点点播和res对象,并包括许多其他”框架“功能,例如路由和模板,高雅没有。
因此,如果你希望更接近node . js和传统的节点。js样式编码,你可能希望坚持使用连接/表达或类似的框架。如果你想摆脱回调,请使用高雅。
<强>总结强>
亚是一个比表达更精简,使用节点新特性的中间件框架,相比之前表达就是一个庞大的框架
- <李>
如果你喜欢diy,很潮,可以考虑高雅,它有足够的扩展和中间件,而且自己写很简单
李> <李>如果你想简单点,找一个框架啥都有,那么先表达
李>如果你有兴趣了解更多不同,请访问高雅与表达
<强>高雅项目搭建强>
注意,本篇教程面向有一定的洋槐使用经验的用户。如果,你还不了解高雅,请先看下面的文档高雅中文文档
亚文档过于精简,虽然将每一个API都进行解释说明,但还是很难将其组织起来进行应用,对于初学者来说可谓是很不友好。
笔者第一个高雅项目,将所有接口,逻辑,配置等全部写在了应用程序。js中,虽说完美运行,但是可读性、可维护性极差,所以一个好的目录结构尤为重要
<强>目录创建强>
- <李>
配置-配置
李> <李>模型——数据库模型(ROM)
李> <李>控制器,控制器
李> <李>中间件),中间件
李> <李>公共-静态资源
李> <李>服务——服务
李> <李>路由器-路由
李> <李>应用程序。js -启动文件
李> <强>依赖安装强>
创建好项目目录后我们需要安装一些依赖,来供我们使用
- <李>
babel-core/babel-preset-es2015 -让nodeJs支持es6模块
李> <李>高雅——koa2
李> <李>koa-body -请求体解析
李> <李>koa-cache-control -缓存控制
李> <李>koa-compress——gzip
李> <李>koa-cors -跨域
李> <李>koa-logger -日志
李> <李>koa-onerror -错误处理
李> <李>koa-router -路由
李> <李>koa-session -会话
李> <李>koa-static -静态资源服务
李> <李>koa-helmet -安全
李> <李>md5 - md5加密
李> <李>mkdirp——递归创建目录
李>可以根据自己的需求进行选择,但是一些依赖是必须安装的
- <李>
高雅——koa2
李> <李>koa-body -请求体解析
李> <李>koa-router -路由
李>后面的内容会讲解每个插件有什么用,如何去用。
<强>目录详解强>
配置
配置是我们的配置文件,比如:
- <李>
数据库(mysql、甲骨文、复述等)
李> <李>OSS
李> <李>…
李>实际运用:
- <李>
confirg
李>- <李>
database.config.js(新建)
李>database.config。js
export default { ,数据库:& # 39;& # 39; ,用户名:& # 39;& # 39; ,密码:& # 39;& # 39; ,方言:& # 39;& # 39; 主持人:大敌;& # 39;& # 39; ,端口:3306 }
具体配置之后会跟大家仔细讲解。
<强>模型强>
模型文件夹主要是我们的数据库模型(ORM),存储数据库映射文件,例如:
- <李>
李>模型
- <李>
索引。js -入口文件
李> <李>用户。js -对应数据库中用户表的
李>索引。js
import Sequelize 得到& # 39;sequelize& # 39; import config 得到& # 39;. ./config/database.config& # 39; const sequelize =, new Sequelize(配置) 时间=export const  user sequelize.import(时间+ __dirname & # 39;/用户# 39;) export default  { ,用户, ,sequelize }高雅从零搭建到Api实现项目的示例分析