本文介绍了vue页面使用阿里oss上传功能的实例(一),分享给大家,也给自己留个笔记
直奔主题:
前端部分
1.前端页面中需要引入oss-sdk:
2.自己封装的upload组件:
.oss_file { height: 100px; width: 100%; } .oss_file input { right: 0; top: 0; opacity: 0; filter: alpha(opacity=0); cursor: pointer; width: 100%; height: 100%; }
3.使用组件:

后端部分
1.首先安装依赖
npm install ali-oss npm install co
2.service文件
'use strict'
var OSS = require('ali-oss');
var STS = OSS.STS;
var co = require('co');
var sts = new STS({
accessKeyId: 'accessKeyId',
accessKeySecret: 'accessKeySecret',
});
var rolearn = 'acs:ram::ID:role/ram';
var policy = {
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:GetObject",
"oss:PutObject"
],
"Resource": [
"acs:oss:*:*:Bucket",
"acs:oss:*:*:BucketName/*"
]
}
]
};
class OssUploadService {
getOssToken(req, res){
var result = co(function* () {
var token = yield sts.assumeRole(rolearn, policy, 15 * 60, 'ossupload');
res.json({
token:token.credentials
})
}).catch(function (err) {
});
}
}
module.exports = new OssUploadService()
3.controller文件
'use strict'
var ossUploadService = require('../service/ossUploadService')
module.exports = function(app) {
app.get('/alioss/getOssToken', function(req, res) {
const result = ossUploadService.getOssToken(req, res)
if (result) {
res.json({
code: 100,
data: result
})
}
})
}
到这里就大功告成了吗?错!这只是完成了最基本的部分,接下来我们要在阿里云控制台中设置权限、角色、策略等。
源码地址:https://github.com/taosin/alioss-js-upload
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。



