服务器框架
得益于Node.js的出现,JS不仅仅局限于在浏览器中发光发热,借助Node.js提供的环境,能够在JS中编写服务器端代码,实现JS的跨平台开发。因此也出现了许多使用JS来编写服务端的框架。
Express
当前最流行的Node.js框架。,npm下载量遥遥领先。
特点:
- 简单易用,
API设计相当简单明了,可以说是入门Node.js的首选框架。 - 社区活跃,有很多成熟的插件和扩展,可以满足大部分需求。
- 拓展性强,加上上面提到
Express的社区相当活跃,Express项目可以通过各类中间件去拓展功能,这也是Express的核心。
// serve.js
import express from 'express';
import testRouter from './routes/test';
const app = express();
//数据处理中间件
app.use(express.json()); //解析JSON数据
app.use(express.urlencoded({ extended: true })); //解析表单数据
//路由中间件
app.use('/test', testRouter);
app.listen(3000,()=>{
console.log('服务器启动成功');
})
// test.js
const testRouter = express.Router();
testRouter.get('/', (request,response)=> {
response.json({data:'这是测试发送一条信息'})
})
export default testRouter;
上方的示例就能够实现一个简单的GET数据接口。不难看出Express通过使用use去拓展各类功能,包括但不限于路由处理,数据解析等。而且语法也是相当简单明了。
值得注意的是,Express在请求的响应过程中,通过一层层回调函数去完成请求的处理。这也是Express的核心。
response.json({data:'这是测试发送一条信息'})即Express最终响应给客户端的数据。为了避免Express的回调地狱,我们也可以借助async await去以同步代码的写法完成异步处理。
---未完待续