在前端开发中,我们经常需要搭建一个小型的服务器或者实现一些简单的接口。而这时我们可能不想使用比较重量级的框架,这时就可以考虑使用微型框架 micro.js。
micro.js 是一个极其轻量级的 http 服务器。它的特点是同时支持 es6 module 和 commonjs 接口规范,同时和中间件和路由模块化的使用方式也比较简单。
安装 micro.js
使用 npm 安装 micro.js:
npm install micro --save
使用 micro.js
-- -------------------- ---- ------- ----- - ------------ - - ---------------- ----- ------ - ------------------ ----- ---- -- - ----- - --- - - --- -- ---- --- ---- - ------ ----- --------- - ---- -- ---- --- --------- - ------ ------ ------ - ---- - ------ ------ - -- ------------------- --- -- - -- ----- ----- --- -------------- ----- -- ----------------------- --
在上面的示例代码中,我们首先引入了 micro.js 的 createServer
方法,并通过这个方法创建了一个 http 服务器。
在创建服务器的回调函数中,我们先通过 res
对象设置了请求头,并根据请求的不同 url 做出了不同的响应。如果请求的是 /
路由,则返回 欢迎使用 micro.js
,如果请求的是 /hello
路由,则返回 Hello World
,否则返回 路由有误
。
最后,我们使用 server.listen
方法将服务器绑定在端口 3000
上,并打印了一个信息提示服务成功启动。
如何添加中间件
micro.js 支持添加中间件,我们可以通过 createServer
方法的方式来添加中间件。下面是示例代码:
-- -------------------- ---- ------- ----- - ------------ - - ---------------- ----- ------ - ------------- ----- ---- -- - ------ ----------- - - ----- ---------------- - -- -- ----- ---- -- - ------------------ ------------ ------ ------- ---- - ----- -------------------- - -- -- ----- ---- -- - ------ ----------------------- --------------- -- - ------------------------ -------------- - --- ------ -------- ------------- -- - ---------------------------- -------------------------------- ------------------- --- -- - -- ----- ----- --- -------------- ----- -- ----------------------- --
在上面的示例代码中,我们首先创建了一个最简单的服务器,将所有的请求都返回了一个固定的响应信息。
其次,我们定义了两个中间件:
loggerMiddleware
-- 打印请求地址的中间件。wrapHandleMiddleware
-- 异常处理中间件,如果 http 请求处理过程中出现异常,则将错误信息返回给客户端,并返回 500 状态码。
最后,我们通过 server.use
方法将两个中间件挂载到服务器中。
中间件路由
如果我们的项目比较复杂,中间件列表非常多,这时我们可能需要为中间件制定路由才能更加高效的管理中间件。
micro.js 支持通配符路由匹配,如:
-- -------------------- ---- ------- ----- - ------------ - - ---------------- ----- ------ - ------------------ ---- -- - ------ ------ -- ----- ---------------- - -- -- ----- ---- -- - ------------------ ------------ ------ ------- ---- - ----- -------------------- - -- -- ----- ---- -- - ------ ----------------------- --------------- -- - ------------------------ -------------- - --- ------ -------- ------------- -- - -------------------- ----------------- -------------------- --------------------- ------------------- --- -- - -- ----- ----- --- -------------- ----- -- ----------------------- --
在上面的示例代码中,我们为两个中间件添加了 /api/*
前缀,这意味着只有通过这个前缀访问的路由才会被这两个中间件处理。
总结
micro.js 是一个非常适合于简单服务器的微型框架。我们可以使用它来快速实现一个小型的 http 服务器。在使用过程中,我们可以通过添加中间件来拓展服务器功能,并通过中间件路由来高效地使用中间件。
在实际开发过程中,如果我们不需要使用重量级的框架,micro.js 就是一个很好的选择。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f431d8e776d08040e6f