简介
在前端开发过程中,我们经常需要操作本地文件系统,比如读取、写入、创建、删除文件等等。而 node.js 提供了一个强大的 fs
模块来实现这些操作。但是在浏览器端直接使用 fs
模块是不可行的。
这时候,我们可以使用 micro-rest-fs
这个 npm 包来实现在浏览器端通过调用 API 的形式来操作服务器端的文件系统。
安装
在项目中安装 micro-rest-fs
:
npm install micro-rest-fs
使用
服务端
首先在服务端安装 micro-rest-fs
:
npm install micro-rest-fs
在服务端使用 micro-rest-fs
的时候,需要先启动一个简单的 HTTP 服务器,这里以 micro
这个包为例:
-- -------------------- ---- ------- ----- -- - -------------- ----- ----- - ----------------- ----- ----------- - ------------------------- ----- ------ - ----------- ----- ---- -- - -- ------ ------------- -- ----- ------ - ----- ----------------------- ---- ---- -- ------- --- ---------- - ------ ------- - -- --------- ------ ------- -------- --- --------------------
这样,当 HTTP 请求到达服务器时,先交给 micro-rest-fs
处理,如果不是文件系统操作的请求,再交给自己的业务逻辑处理。注意,这里的第三个参数 fs
是 micro-rest-fs
需要调用的文件系统对象,可以是 fs
模块或者其他对应的文件系统对象。
客户端
在客户端使用 micro-rest-fs
的时候,可以像使用其他的 RESTful API 一样调用:
-- -------------------- ---- ------- ----- ------ - -------------------------------- -- ------ ------------------- - ------- ------ ------------- -- - ----------------- --- -- ----- -------------------- - ------- ------- ----- ---------------- ----- ------------- --- ------------- -- - ----------------- --- -- ---- ----------------------- - ------- ------- ----- ---------------- ----- ------------ --- ------------- -- - ----------------- --- -- ---- ------------------------ - ------- ------- ----- ---------------- ----- ------------ ----- ------- -------- --- ------------- -- - ----------------- ---
micro-rest-fs/client
模块会自动处理跨域问题,管理请求头和响应头,并且支持 Promise 风格的异步调用。以上代码实现了文件列表的查询、文件夹的创建、文件的读取和文件的写入等操作。
示例代码
在 GitHub 上有一个使用 micro-rest-fs
实现的在线 Markdown 编辑器的示例:https://github.com/leerduo/markdown-editor。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600558a381e8991b448d5f3a