cos-js-sdk-v5
JavaScript SDK for [腾讯云对象存储](https://cloud.tencent.com/product/cos)
Last updated a year ago by tianfeng .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install cos-js-sdk-v5 
SYNC missed versions from official npm registry.

cos-js-sdk-v5

腾讯云 COS JS SDK(XML API

releases and changelog

Get started

一、前期准备

  1. 首先,JS SDK 需要浏览器支持基本的 HTML5 特性,以便支持 ajax 上传文件和计算文件 md5 值。
  2. COS对象存储控制台 创建存储桶,得到 Bucket(由bucketname-appid 组成,appid必须填入) 和 Region(地域名称)
  3. 控制台密钥管理 获取您的项目 SecretId 和 SecretKey
  4. 配置 CORS 规则,配置例子如下图:

cors

二、计算签名

由于签名计算放在前端会暴露 SecretId 和 SecretKey,我们把签名计算过程放在后端实现,前端通过 ajax 向后端获取签名结果,正式部署时请在后端加一层自己网站本身的权限检验。

这里提供 NodeJS 的签名例子,其他语言,请参照对应的 XML SDK

三、上传例子

  1. 创建 test.html,填入下面的代码,修改里面的 Bucket 和 Region。
  2. 部署好后端的签名服务,并修改 getAuthorization 里的签名服务地址
  3. 把 test.html 放在 Web 服务器下,然后在浏览器访问页面,测试文件上传
<input id="file-selector" type="file">
<script src="dist/cos-js-sdk-v5.min.js"></script>
<script>
  
// 存储桶名称,由bucketname-appid 组成,appid必须填入,可以在COS控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucket
const Bucket = 'test-1250000000';
// 存储桶Region可以在COS控制台指定存储桶的概览页查看 https://console.cloud.tencent.com/cos5/bucket/ 
// 关于地域的详情见 https://cloud.tencent.com/document/product/436/6224
const Region = 'ap-guangzhou';

// 初始化实例,详情参考:https://cloud.tencent.com/document/product/436/11459

// 1、方式一:传入临时密钥
const cos = new COS({
  SecretId: 'your_tmpSecretId',
  SecretKey: 'your_tmpSecretKey',
  SecurityToken: 'your_sessionToken',
});

// 2、方式二:传入获取临时密钥回调
const cos = new COS({
    // getAuthorization 必选参数
    getAuthorization: function (options, callback) {
        // 初始化时不会调用,只有调用 cos 方法(例如 cos.putObject)时才会进入
        // 异步获取临时密钥
        // 服务端 JS 示例:https://github.com/tencentyun/cos-js-sdk-v5/blob/master/server/
        // 服务端其他语言参考 COS STS SDK :https://github.com/tencentyun/qcloud-cos-sts-sdk
        // STS 详细文档指引看:https://cloud.tencent.com/document/product/436/14048
        const url = 'http://example.com/server/sts'; // url 替换成您自己的后端服务
        const xhr = new XMLHttpRequest();
        let data = null;
        let credentials = null;
        xhr.open('GET', url, true);
        xhr.onload = function (e) {
            try {
               data = JSON.parse(e.target.responseText);
               credentials = data.credentials;
            } catch (e) {
            }
            if (!data || !credentials) {
              return console.error('credentials invalid:\n' + JSON.stringify(data, null, 2))
            };
            // 检查credentials格式
            console.log(credentials);
            callback({
              TmpSecretId: credentials.tmpSecretId,
              TmpSecretKey: credentials.tmpSecretKey,
              SecurityToken: credentials.sessionToken,
              // 建议返回服务器时间作为签名的开始时间,避免用户浏览器本地时间偏差过大导致签名错误
              StartTime: data.startTime, // 时间戳,单位秒,如:1580000000
              ExpiredTime: data.expiredTime, // 时间戳,单位秒,如:1580000000
          });
        };
        xhr.send();
    }
});


var taskId;

// 监听选文件
document.getElementById('file-selector').onchange = function () {

    var file = this.files[0];
    if (!file) return;

    // 上传文件
    cos.uploadFile({
        Bucket: Bucket,
        Region: Region,
        Key: file.name,
        Body: file,
        SliceSize: 1024 * 1024, // 大于1mb才进行分块上传
        onTaskReady: function (tid) {
          taskId = tid;
        },
        onProgress: function (progressData) {
            console.log('上传中', JSON.stringify(progressData));
        },
    }, function (err, data) {
        console.log(err, data);
    });

    // 可使用队列暂停、重启任务
    // cos.pauseTask(taskId);

};
</script>

webpack 引入方式

支持 webpack 打包的场景,可以用 npm 引入作为模块

npm i cos-js-sdk-v5 --save

Start Demo

1. git clone cos-js-sdk-v5 至本地
2. cd cos-js-sdk-v5 进入根目录后执行:npm install
3. 修改 server 文件夹中 sts.js 或 sts.php 中的 secretId、secretKey、bucket、region 配置;注意allowPrefix和allowActions需要设置适当的权限
4. 修改 demo/index.html 中config的Bucket、Region 参数
5. npm run server # 用 node 启动服务
6. 浏览器输入 http://127.0.0.1:3000/ 即可进行 demo 演示

说明文档

使用例子

快速入门

接口文档

Current Tags

  • 1.11.0-beta.2                                ...           beta (a year ago)
  • 1.10.1                                ...           latest (a year ago)

177 Versions

  • 1.11.0-beta.2                                ...           a year ago
  • 1.10.1                                ...           a year ago
  • 1.10.1-beta.1                                ...           a year ago
  • 1.10.1-beta.0                                ...           a year ago
  • 1.8.8                                ...           a year ago
  • 1.11.0-beta.1                                ...           a year ago
  • 1.10.0 [deprecated]           ...           a year ago
  • 1.9.1-beta.0                                ...           a year ago
  • 1.11.0-beta.0                                ...           a year ago
  • 1.9.0-beta.2                                ...           a year ago
  • 1.9.0-beta.1 [deprecated]           ...           a year ago
  • 1.9.0-beta.0 [deprecated]           ...           a year ago
  • 1.8.7                                ...           a year ago
  • 1.4.14-beta0                                ...           a year ago
  • 1.8.6                                ...           a year ago
  • 1.8.5                                ...           a year ago
  • 1.8.4                                ...           2 years ago
  • 1.8.4-beta [deprecated]           ...           2 years ago
  • 1.8.3                                ...           2 years ago
  • 1.8.2                                ...           2 years ago
  • 1.8.1                                ...           2 years ago
  • 1.8.0                                ...           2 years ago
  • 1.7.1                                ...           2 years ago
  • 1.7.0                                ...           2 years ago
  • 1.6.0                                ...           2 years ago
  • 1.5.0                                ...           2 years ago
  • 1.4.22                                ...           2 years ago
  • 1.4.21                                ...           3 years ago
  • 1.4.20                                ...           3 years ago
  • 1.4.19                                ...           3 years ago
  • 1.4.18                                ...           3 years ago
  • 1.4.17                                ...           3 years ago
  • 1.4.16                                ...           3 years ago
  • 1.4.15                                ...           3 years ago
  • 1.4.15-beta.1                                ...           3 years ago
  • 1.4.15-beta.0 [deprecated]           ...           3 years ago
  • 1.4.14                                ...           3 years ago
  • 1.4.13                                ...           3 years ago
  • 1.4.12                                ...           3 years ago
  • 1.4.11                                ...           3 years ago
  • 1.4.10                                ...           3 years ago
  • 1.4.9                                ...           3 years ago
  • 1.4.6                                ...           4 years ago
  • 1.4.5                                ...           4 years ago
  • 1.4.4                                ...           4 years ago
  • 1.4.3                                ...           4 years ago
  • 1.4.2                                ...           4 years ago
  • 1.4.1                                ...           4 years ago
  • 1.4.1-beta0.5 [deprecated]           ...           4 years ago
  • 1.4.1-beta0.4 [deprecated]           ...           4 years ago
  • 1.4.1-beta0.3 [deprecated]           ...           4 years ago
  • 1.4.1-beta0.2 [deprecated]           ...           4 years ago
  • 1.4.1-beta0.1 [deprecated]           ...           4 years ago
  • 1.4.1-beta0.0 [deprecated]           ...           4 years ago
  • 1.4.0 [deprecated]           ...           4 years ago
  • 1.3.10                                ...           4 years ago
  • 1.3.9                                ...           4 years ago
  • 1.3.8                                ...           4 years ago
  • 1.3.7                                ...           4 years ago
  • 1.3.6                                ...           4 years ago
  • 1.3.5                                ...           4 years ago
  • 1.3.4                                ...           4 years ago
  • 1.3.3                                ...           4 years ago
  • 1.3.2                                ...           4 years ago
  • 1.3.1                                ...           4 years ago
  • 1.3.0 [deprecated]           ...           4 years ago
  • 1.2.21                                ...           4 years ago
  • 1.2.20                                ...           4 years ago
  • 1.2.18                                ...           5 years ago
  • 1.2.16                                ...           5 years ago
  • 1.2.15                                ...           5 years ago
  • 1.2.14                                ...           5 years ago
  • 1.2.13                                ...           5 years ago
  • 1.2.12                                ...           5 years ago
  • 1.2.11                                ...           5 years ago
  • 1.2.10                                ...           5 years ago
  • 1.2.9                                ...           5 years ago
  • 1.2.8                                ...           5 years ago
  • 1.2.7                                ...           5 years ago
  • 1.2.6                                ...           5 years ago
  • 1.2.5                                ...           5 years ago
  • 1.2.4                                ...           5 years ago
  • 1.2.3                                ...           5 years ago
  • 1.2.2                                ...           5 years ago
  • 1.2.1                                ...           5 years ago
  • 1.2.0                                ...           5 years ago
  • 1.1.10                                ...           5 years ago
  • 1.1.9                                ...           5 years ago
  • 1.1.8                                ...           5 years ago
  • 1.1.7                                ...           5 years ago
  • 1.1.6                                ...           5 years ago
  • 1.1.5                                ...           5 years ago
  • 1.1.3                                ...           5 years ago
  • 1.1.2                                ...           5 years ago
  • 1.1.1                                ...           5 years ago
  • 1.1.0                                ...           5 years ago
  • 1.0.4                                ...           5 years ago
  • 1.0.1                                ...           6 years ago
  • 1.0.0                                ...           6 years ago
  • 0.5.27                                ...           6 years ago
  • 0.5.26                                ...           6 years ago
  • 0.5.24                                ...           6 years ago
  • 0.5.23                                ...           6 years ago
  • 0.5.22                                ...           6 years ago
  • 0.5.21                                ...           6 years ago
  • 0.5.20                                ...           7 years ago
  • 0.5.19                                ...           7 years ago
  • 0.5.18                                ...           7 years ago
  • 0.5.17                                ...           7 years ago
  • 0.5.16                                ...           7 years ago
  • 0.5.13                                ...           7 years ago
  • 0.5.12                                ...           7 years ago
  • 0.5.11                                ...           7 years ago
  • 0.5.10                                ...           7 years ago
  • 0.5.8                                ...           7 years ago
  • 0.5.7                                ...           7 years ago
  • 0.5.6                                ...           7 years ago
  • 0.5.5                                ...           7 years ago
  • 0.5.4                                ...           7 years ago
  • 0.5.3                                ...           7 years ago
  • 0.5.2                                ...           7 years ago
  • 0.5.1                                ...           7 years ago
  • 0.5.0                                ...           7 years ago
  • 0.4.28                                ...           7 years ago
  • 0.4.27                                ...           7 years ago
  • 0.4.26                                ...           7 years ago
  • 0.4.25                                ...           7 years ago
  • 0.4.24                                ...           7 years ago
  • 0.4.23                                ...           7 years ago
  • 0.4.22                                ...           7 years ago
  • 0.4.20                                ...           7 years ago
  • 0.4.19                                ...           7 years ago
  • 0.4.18                                ...           7 years ago
  • 0.4.17                                ...           8 years ago
  • 0.4.16                                ...           8 years ago
  • 0.4.14                                ...           8 years ago
  • 0.4.13                                ...           8 years ago
  • 0.4.12                                ...           8 years ago
  • 0.4.11                                ...           8 years ago
  • 0.4.10                                ...           8 years ago
  • 0.4.9                                ...           8 years ago
  • 0.4.7                                ...           8 years ago
  • 0.4.6                                ...           8 years ago
  • 0.4.5                                ...           8 years ago
  • 0.4.4                                ...           8 years ago
  • 0.4.3                                ...           8 years ago
  • 0.4.2                                ...           8 years ago
  • 0.4.1                                ...           8 years ago
  • 0.4.0                                ...           8 years ago
  • 0.3.11                                ...           8 years ago
  • 0.3.10                                ...           8 years ago
  • 0.3.9                                ...           8 years ago
  • 0.3.7                                ...           8 years ago
  • 0.3.5                                ...           8 years ago
  • 0.3.4                                ...           8 years ago
  • 0.3.3                                ...           8 years ago
  • 0.3.2                                ...           8 years ago
  • 0.3.1                                ...           8 years ago
  • 0.3.0                                ...           8 years ago
  • 0.2.2                                ...           8 years ago
  • 0.2.1                                ...           8 years ago
  • 0.2.0                                ...           8 years ago
  • 0.1.3                                ...           9 years ago
  • 0.1.2                                ...           9 years ago
  • 0.1.1                                ...           9 years ago
  • 0.1.0                                ...           9 years ago
  • 0.0.11                                ...           9 years ago
  • 0.0.9                                ...           9 years ago
  • 0.0.8                                ...           9 years ago
  • 0.0.7                                ...           9 years ago
  • 0.0.6                                ...           9 years ago
  • 0.0.5                                ...           9 years ago
  • 0.0.4                                ...           9 years ago
  • 0.0.3                                ...           9 years ago
  • 0.0.2                                ...           9 years ago
  • 0.0.1                                ...           9 years ago
  • 0.0.0                                ...           9 years ago
Downloads
Today 0
This Week 0
This Month 57
Last Day 0
Last Week 57
Last Month 10
Dependencies (1)
Dev Dependencies (17)
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |