用户在客户端那里可以把本地设备上的文件上传到服务端,在服务端这里的文件可以通过网络下载到客户端。设计上传文件这个服务,我们会借助一个叫 Multer 的包提供的功能,用它创建一个处理上传文件用的中间件,然后定义一个上传文件用的接口,在接口上使用这个上传文件用的中间件,这样在客户端带着文件请求使用这个接口就可以把文件上传到服务端了。
在客户端请求上传文件,数据格式一般要设置成 multipart/form-data ,添加一个文件表单字段,表单字段的名字是服务端规定好的,对应的值是本地设备上的一个文件。 服务端收到客户端发过来的文件,可以处理一下,比如为了避免重名的文件,可以修改一下文件的名字,然后把文件转移到指定的目录里面。
上传的文件相关的信息我们需要存储到应用的数据仓库里,比如文件的名字,类型,大小等等。所以需要在数据仓库里专门给文件信息设计一张数据表。客户端可以请求得到某个具体的文件,服务端可以调取对应的文件数据记录,找到服务端上对应的文件,再把它发送给客户端。