美文网首页
node通过七牛云的头像上传案例

node通过七牛云的头像上传案例

作者: 祝家庄打烊 | 来源:发表于2018-10-06 17:01 被阅读0次

    一、准备工作

    网上注册七牛云用户(需要验证个人信息,个人用户可免费获取10G空间)——配置本地数据库(推荐使用客户端navicat。node推荐使用mongodb,可以存储json形式的数据)

    二、思想

    通过multiparty模块,接收C端传递过来的数据——图片存储到本地——本地图片上传至七牛云——七牛云链接地址,存储数据库——通过接口的形式返回到C端。代码已经上传到github,有需要的猴子可以去下载(https://github.com/zhuyangmsg/node-upload)


    三、模块解析

    ejs模块:模板引擎,方便解析数据。(使用ejs模块,前后端未进行分离,导致需要配置静态文件目录)

    模板引擎

    qn模块:方便七牛云的上传操作

    七牛云配置

    multiparty模块:方便接收C端传递过来的数据,进行本地存储

    获取上传数据

    四、代码解析、逻辑分析

    1、配置路由,渲染对应的模块引擎。根据C端需要的数据,写成接口的形式进行数据返回。(通过姓名,找到数据库中对应那一条数据)

    配置路由

    2、获取表单提交完成后的数据,分析表单提交数据格式,如果存在图片上传的话,可以通过multiparty进行本地存储。

    表单提交

    3、初始化表单数据,对传过来的数据进行解析。判断是否解析成功,成功后,可获取关于解析数据信息。

    4、上传到七牛云,根据本地路径和新路径,即可上传成功。

    5、上传成功后,修改相应数据库的图片地址。

    6、修改成功后,删除本地图片,和七牛云上的图片。

    sky!sky!sky!现在就完成所有的操作,后四步的代码如下图:

    解析表单数据

    五、另一种方式上传数据

    现阶段,图片上传最流行的方式是通过H5上传base64位的地址。node通过body接收到base64位的地址。然后进行解析,对于后端来说,base64位地址前面一截是没有什么用处的(主要用来加密),主要是通过后半截的地址来转化成二进制流,然后,在通过二进制数据,把图片写入到本地。

    base64地址

    相关文章

      网友评论

          本文标题:node通过七牛云的头像上传案例

          本文链接:https://www.haomeiwen.com/subject/voshaftx.html