如何使用腾讯云cos 存储相应的文件?我的第二款开源小程序
发布于 4 年前 作者 mxu 3463 次浏览 来自 分享

为什么做这个小程序

  1. 闲来无事,就做着玩,看看腾讯云cos 怎么使用到小程序中
  2. 群里讨论有人做壁纸,二次元的相关的小程序,感觉自己也想做一个结果做出来没啥流量,想想就发到这里了,大家交个朋友-老罗语录( 手动狗头)

使用到的技术

主要使用到百度鉴黄图片,腾讯云cos 以前ui 框架colorui。然后是小程序云开发
在开发过程中由于没有小程序云开发sdk ,所以稍微费点劲。最后采用了nodejs 的sdk 稍微改了一下

var STS = require('sts');
exports.main = async(event, context) => {
  return new Promise(async(resolve, reject) => {
    var config = {
      secretId: '',
      secretKey: '',
      proxy: '',
      durationSeconds: 1800,
      bucket: 'xiaojiejie-1253624714',
      region: 'ap-shanghai',
      allowPrefix: '*',
      allowActions: [
        // 简单上传
        'name/cos:PutObject',
        'name/cos:PostObject',
        // 分片上传
        'name/cos:InitiateMultipartUpload',
        'name/cos:ListMultipartUploads',
        'name/cos:ListParts',
        'name/cos:UploadPart',
        'name/cos:CompleteMultipartUpload'
      ],
    };
    var shortBucketName = config.bucket.substr(0, config.bucket.lastIndexOf('-'));
    var appId = config.bucket.substr(1 + config.bucket.lastIndexOf('-'));
    var policy = {
      'version': '2.0',
      'statement': [{
        'action': config.allowActions,
        'effect': 'allow',
        'principal': {
          'qcs': ['*']
        },
        'resource': [
          'qcs::cos:' + config.region + ':uid/' + appId + ':prefix//' + appId + '/' + shortBucketName + '/' + config.allowPrefix,
        ],
      }],
    };
    STS.getCredential({
      secretId: config.secretId,
      secretKey: config.secretKey,
      proxy: config.proxy,
      durationSeconds: config.durationSeconds,
      policy: policy,
    }, function(err, tempKeys) {
      var result = JSON.stringify(err || tempKeys) || '';
      resolve({
        data: result,
      })
    });
  })
}

然后就可以使用了。
鉴黄模块使用了百度的,小程序的内容安然安全我也对接(云函数checkImg),但是当时黄色图片也返回的是ok 我就有点慌,才采用的百度鉴黄

开源

开源地址:https://gitee.com/sunqi/FindPic

小程序学习群

https://www.jianshu.com/p/66ec0eed68bd

3 回复

支持群主事业,群主在开源的路上越走越远

我怎么看不到上传入口呢?,介个能删除图片吗?

正好想把图片从云存储搬到COS,云存储加载太慢了

支持群主事业,群主在开源的路上越走越远,

支持群主事业,群主在开源的路上越走越远,

回到顶部