admin 管理员组

文章数量: 887016

开通服务

  1. 进入官网点击立即使用
  2. 实名认证,填写信息
  3. 开通服务

  4. 创建存储桶

私有读写:读写均要认证
公有读私有写:写要认证,读不用
共有读写:读写均不用认真

  1. 然后就可以将文件上传至桶中了
用python实现操作腾讯云服务器
  1. 安装
pip install -U cos-python-sdk-v5
  1. 配置(官方SDK, 更具自己需求修改)
# -*- coding=utf-8
# appid 已在配置中移除,请在参数 Bucket 中带上 appid。Bucket 由 BucketName-APPID 组成
# 1. 设置用户配置, 包括 secretId,secretKey 以及 Region
from qcloud_cos import CosConfig
from qcloud_cos import CosS3Client
import sys

#secretID/key要进入密钥管理获取
secret_id = 'COS_SECRETID'      # 替换为用户的 secretId
secret_key = 'COS_SECRETKEY'      # 替换为用户的 secretKey

region = 'ap-nanjing'     # 替换为用户的 Region
token = None                # 使用临时密钥需要传入 Token,默认为空,可不填
scheme = 'https'            # 指定使用 http/https 协议来访问 COS,默认为 https,可不填
config = CosConfig(Region=region, SecretId=secret_id, SecretKey=secret_key, Token=token, Scheme=scheme)
# 2. 获取客户端对象
client = CosS3Client(config)
# 参照下文的描述。或者参照 Demo 程序,详见 https://github/tencentyun/cos-python-sdk-v5/blob/master/qcloud_cos/demo.py

桶相关

#创建桶
response = client.create_bucket(
   Bucket='examplebucket-1250000000'
)
#查看桶列表
response = client.list_buckets(
)

上传文件

# 根据文件大小自动选择简单上传或分块上传,分块上传具备断点续传功能。
response = client.upload_file(
   Bucket='examplebucket-1250000000',	//名称
   LocalFilePath='local.txt',			//本地文件路径
   Key='picture.jpg',					//上传到桶后的文件名
   PartSize=1,
   MAXThread=10,
   EnableMD5=False
)
print(response['ETag'])

#上传内存中的图片对象
    response = client.upload_file_from_buffer(
        Bucket=bucket,
        Body=pic,
        Key=key,
    )  # 可以直接上传对象
    
    url = 'https://{}.cos.ap-nanjing.myqcloud/{}'.format(bucket, key)#图片的url


最简单的文件上传代码(全部使用默认设置)

设置桶跨域
def create_bucket(name):
    client = CosS3Client(config)
    response = client.create_bucket(
        Bucket=name,
        ACL='public-read',
    )
    cors_config = {
        'CORSRule': [  # 跨域访问设置
            {
                "AllowedOrigin": ["*"],
                "AllowedMethod": ["GET", "POST", "PUT", "DELETE", "HEAD"],
                "AllowedHeader": ["*"],
                "ExposeHeader": ['*'],
                "MaxAgeSeconds": "500"  # 设置超时时间
            }
        ]
    }
    client.put_bucket_cors(
        Bucket=name,
        CORSConfiguration=cors_config
    )

本文标签: 腾讯 对象