评论

如何使用腾讯云cos 存储相应的文件?我的第二款开源小程序

图片管理小程序

为什么做这个小程序

  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

最后一次编辑于  2020-04-11  
点赞 7
收藏
评论

3 个评论

  • admin
    admin
    2020-04-12

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

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

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

    2020-04-12
    赞同
    回复 1
    • 哈哈-
      哈哈-
      2020-04-12
      入口没有放出来,自己配置一下入口就行了,我没有开发删除图片,自己调用一下api就可以了
      2020-04-12
      回复
  • meng674782630
    meng674782630
    2020-04-11

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

    2020-04-11
    赞同
    回复 1
    • 哈哈-
      哈哈-
      2020-04-11
      谢谢
      2020-04-11
      回复
  • 小肥羊🍊
    小肥羊🍊
    2020-04-11

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

    2020-04-11
    赞同
    回复 1
    • 哈哈-
      哈哈-
      2020-04-11
      谢谢了,共同进步,希望大家在小程序上都能赚点喝酒的烤串的钱
      2020-04-11
      回复
登录 后发表内容