是存储对象的容器。web
是OSS存储数据的基本单元。由元信息,用户数据和文件名(key)组成。对象由存储空间内部惟一的 Key 来标识。npm
OSS 的数据中心所在物理位置。json
OSS 对外服务的访问域名。api
AccessKey(简称 AK)指的是访问身份验证中用到的 AccessKeyId 和 AccessKeySecret。OSS 经过使用 AccessKeyId 和 AccessKeySecret 对称加密的方法来验证某个请求的发送者身份。cors
eg: https://mybucket.oss-cn-hangz...post
<img "src="https://mybucket.oss-cn-hangzhou.aliyuncs.com/folder/logo.png" />fetch
需注意:
Node:Node.js >= 8.0.0 required. You can use 4.x in Node.js < 8.~~~~ui
Browser:IE >= 10 & Edge ;Major versions of Chrome/Firefox/Safari阿里云
初始化oss加密
let OSS = require('ali-oss'); let client = new OSS({ region: '<oss region>', //例如oss-cn-hangzhou accessKeyId: '<Your accessKeyId>', accessKeySecret: '<Your accessKeySecret>', bucket: '<Your bucket name>' });
上传
try { let result = await client.put('object-name', 'local-file'); console.log(result); } catch (e) { console.log(e); } } put();
到这,上传成功后刷新你的bucket空间就会看到你上传的文件。
利用 OSS 提供的 PostObject 接口,使用表单上传方式将文件上传到 OSS。
在服务端完成签名,而后经过表单直传数据到OSS。
1.获取文件上传policy,api:'getUploadPolicy'。
2.上传配置(可检查签名是否过时)
{ 'key' : g_object_name, 'policy': policyBase64, 'OSSAccessKeyId': accessid, 'success_action_status' : '200', //让服务端返回200,否则,默认会返回204 'callback' : callbackbody, 'signature': signature, 'name': filename, 'file': file }
使用STS方式验证时,要经过STS API获取STS AccessKeyId、STS AcessKeySecret、SecurityToken。
使用 STS 进行临时受权: OSS 能够经过阿里云 STS (Security Token Service) 进行临时受权访问。
fetch('/getToken.json', { method: 'post', mode: 'cors', data: { } }) .then((res)=>{ //handle response const client = new OSS({ ... stsToken: res.token, }) client .put(filename, file) .then((r) => { fn(r) }) .catch(() => { err() }) });