Advertisement

使用阿里云OSS云存储上传文件

阅读量:

使用阿里云OSS云存储上传文件

进入到阿里云平台,进入控制台,点击对象存储OSS
在这里插入图片描述
点击Bucket列表,再创建Bucket
在这里插入图片描述
然后输入Bucket名称,选择地域 (地域最好是选择你所使用OSS存储的地方)。
把读写权限设置为公共读,公共读表示谁都可以访问
在这里插入图片描述
这样一个OSS存储就创建好了,接下来需要配置AccessKey,把鼠标悬浮在右上角的头像上,点击AccessKey管理
在这里插入图片描述
然后就会弹出安全提示,让我们选择继续使用AccessKey,还是使用子用户AccessKey
在这里插入图片描述
我先说说他们的区别:
继续使用AccessKey,是获得完全权限
子用户AccessKey,需要我们配置它的权限,比较安全

继续使用AccessKey,进去后,点击创建AccessKey,进行验证后会得到accessKeyId,和 accessKeySecret,记下来,我们后面会用到!

开始使用子用户AccessKey,按照下图填写
在这里插入图片描述
创建好后,会出现创建成功的界面,注意保存accessKeyId,accessKeySecret,返回后accessKeySecret就看不见了

返回后点击添加权限,我已经添加过了,请自行添加,见下图
在这里插入图片描述
然后我们就可以使用阿里云OSS云存储上传文件了(也可以拖动文件直接上传,这里就不讲了)
访问这个网址https://www.npmjs.com/package/multer-aliyun-oss,按照提示完成,先npm安装

下面代码是后端代码

复制代码
    const express = require("express")
    const app = express()
    const multer = require('multer')
    const MAO = require('multer-aliyun-oss')
    const upload = multer({
        storage: MAO({
            config: {
                region:'oss-cn-hangzhou',
                accessKeyId: 'LTAI5fdasftpqR',
                accessKeySecret: 'UYhLvnePvq8',
                bucket: 'my-demos'
            }
        })
    })
    app.post('http://localhost:3000/upload', upload.single('file'), async (req, res) => {
        const file = req.file
        res.send(file)
    })
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    
    AI写代码

图片中划线的就是regionbucket所需要填写的值
在这里插入图片描述
这里是vue单文件组件
这是前端页面上传文件到OSS的代码,我借助了Element UI,使用了el-upload逐渐,代码如下

复制代码
    <el-upload
          class="avatar-uploader"
          action="http://localhost:3000/upload"
          :on-success='res => $set(model, "avatar", res.url)'
        >
         <img v-if="model.icon" :src="model.icon" >
        </el-upload>
    
    
      
      
      
      
      
      
      
    
    AI写代码

action: 文件上传的路径
on-success: 文件上传成功的回调,这里的意思是res.url赋值给 model.avatar

复制代码
    data () {
    return {
      model: {
        avatar: ''
      }
    }
     }
    
    
      
      
      
      
      
      
      
    
    AI写代码

这样就实现了上传文件到阿里云OSS云存储上

全部评论 (0)

还没有任何评论哟~