OSS brower js SDK

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 浅谈 今天带来的是 OSS brower js SDK 的安装过程和使用的 demo 测试用例。 环境准备 OSS brower js SDK 是基于 node js 框架上的服务端程序,服务端启动以后,提供客户端的访问地址。

浅谈

今天带来的是 OSS brower js SDK 的安装过程和使用的 demo 测试用例。

环境准备

OSS brower js SDK 是基于 node js 框架上的服务端程序,服务端启动以后,提供客户端的访问地址。

  • 准备 node js 安装,最好在 9.x.x 以上版本,我当前的测试版本是 v10.9.0
  • 测试浏览器环境 ( IE>=10,主流版本的 Chrome/Firefox/Safari,主流版本的 Android/iOS/WindowsPhone )

开始安装

下载源码 git 库

npm 开始安装

  • cd ali-oss ,执行 npm install
  • cd example ,执行 npm install

tips :因为部分浏览器不支持 promise,需要引入 promise 兼容库。 例如:IE10 和 IE11 需要引入 promise-polyfill 。

修改配置文件

  • 1、OSS brower 自带集成了 STS 生成的功能,其实就是在本地启动了一个小型的 web server ,这样用可以通过 STS 的安全方式上传、下载 OSS。如果要用这个集成的 STS 生成方式,需要修改:
#vim ali-oss/example/server/config.js
module.exports = {
  AccessKeyId: "子账号 accesskey",
  AccessKeySecret: "子账号 accesskeysecret",
  RoleArn: "角色 Arn",
  // 建议 Token 失效时间为 1 小时
  TokenExpireTime: '3600',
  PolicyFile: 'policy/all_policy.txt'
};
  • 2、 如果用户不想用这个集成的 STS 生成器,可以自己单独写个生成 STS 代码。那么上面的 1 步忽略,直接执行以下操作。 vim ali-oss/example/server/config.js,将 bucket 和 region 替换成自己的信息。
    1
  • 3、 如果用户自己单独写了一个 sts 的程序,需要将 main,js 中依赖的 sts 地址换成自己的访问链接;
    3
  • 4、 在 OSS 上配置跨域头,避免跨域访问到 OSS 是出现 deny 403 的情况。如果客户端访问是 http://192.168.1.102/brower/testindex.html ,在 OSS 跨域来源上 IP 也要加入,最方便的做法是配置为 *;
    4

启动

cd ali-oss/example 执行 npm run start
如果用户想要用 https 的方式上传,在 OSSClient 初始化时加上 secure:true 就是 https 传输了。

const client = new OSS({
        region,
        accessKeyId: creds.AccessKeyId,
        accessKeySecret: creds.AccessKeySecret,
        stsToken: creds.SecurityToken,
        bucket,
        secure:true
      });

下图就是启动后的效果
5

使用遇到问题

上传回调如何添加

const uploadFile = function uploadFile(client) {
  if (!uploadFileClient || Object.keys(uploadFileClient).length === 0) {
    uploadFileClient = client;
  }

  const file = document.getElementById('file').files[0];
  const key = document.getElementById('object-key-file').value.trim() || 'object';

  console.log(`${file.name} => ${key}`);
  const options = {
      progress,
      partSize: 500 * 1024,
          timeout:60000,
      meta: {
          year: 2017,
          people: 'test',
      },
callback: {

//这里是添加上传回调的位置
  url: 'https://uploadtest.xueersi.com/v2/sync',
  /* host: 'oss-cn-shenzhen.aliyuncs.com', */
  /* eslint no-template-curly-in-string: [0] */
  body: 'bucket=${bucket}&object=${object}&var1=${x:var1}',
  contentType: 'application/x-www-form-urlencoded',
  customValue: {
    var1: 'value1',
    var2: 'value2',
  },
},

如何使用 https 传输

const client = new OSS({
        region,
        accessKeyId: creds.AccessKeyId,
        accessKeySecret: creds.AccessKeySecret,
        stsToken: creds.SecurityToken,
        bucket,
        secret: true
      })
相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
1月前
|
存储 JavaScript 前端开发
oss使用SDK上传文件
oss使用SDK上传文件
105 2
|
8月前
|
开发工具 对象存储 Python
使用Python的SDK从OSS中下载指定日期的所有文件
使用Python的SDK从OSS中下载指定日期的所有文件
206 1
|
3天前
|
存储 移动开发 前端开发
对象存储oss使用问题之OSS SDK .net 使用下载例程报错如何解决
《对象存储OSS操作报错合集》精选了用户在使用阿里云对象存储服务(OSS)过程中出现的各种常见及疑难报错情况,包括但不限于权限问题、上传下载异常、Bucket配置错误、网络连接问题、跨域资源共享(CORS)设定错误、数据一致性问题以及API调用失败等场景。为用户降低故障排查时间,确保OSS服务的稳定运行与高效利用。
19 0
|
1月前
|
Rust API 开发工具
Rust初学者,边学边写的OSS的sdk,欢迎批评指正 :)
`Rust`语言编写的阿里云OSS的SDK,依据官方文档并参考了其他语言的实现。
212 5
Rust初学者,边学边写的OSS的sdk,欢迎批评指正 :)
|
2月前
|
对象存储
阿里云oss-cloud-sdk-springboot3兼容问题
阿里云oss-cloud-sdk-springboot3兼容问题
70 0
|
4月前
|
存储 DataWorks 开发工具
在DataWorks中,可以使用Python SDK操作阿里云OSS存储服
在DataWorks中,可以使用Python SDK操作阿里云OSS存储服
134 1
|
10月前
|
SQL 存储 监控
通过sdk查看oss投递(新版)延迟情况最佳实践
在投递任务中,日志服务会将运行日志写入到给定的logstore中,因而可以使用SDK来查看投递任务的当前状态,并进行批量查询,以了解多个Project和投递任务的状态。下面以查看oss投递的延迟为例,介绍客户提供操作步骤和常见的使用场景,以帮助客户更加方便地监控和管理投递任务。
通过sdk查看oss投递(新版)延迟情况最佳实践
|
开发工具 对象存储
阿里云OSS SDK上传文件报错:String contains non ISO-8859-1 code point
阿里云OSS SDK上传文件报错:String contains non ISO-8859-1 code point
458 0
|
Java 测试技术 开发工具
|
网络安全 开发工具 对象存储
autojs之阿里-对象存储OSS-SDK的使用
使用场景 autojs使用阿里云对象存储OSS
392 0
autojs之阿里-对象存储OSS-SDK的使用