个人网站建设规划论文,广告在线设计网站,陕西公路工程建设有限公司网站,电脑公司网站设计腾讯云国际站对象存储#xff08;Cloud Object Storage#xff0c;COS#xff09;提供了 AWS S3 兼容的 API#xff0c;因此当用户的数据从 S3 迁移到 COS 之后#xff0c;只需要进行简单的配置修改#xff0c;即可让客户端应用轻松兼容 COS 服务。下面unirech小编主要介…腾讯云国际站对象存储Cloud Object StorageCOS提供了 AWS S3 兼容的 API因此当用户的数据从 S3 迁移到 COS 之后只需要进行简单的配置修改即可让客户端应用轻松兼容 COS 服务。下面unirech小编主要介绍不同开发平台的 S3 SDK 的适配步骤。在完成添加适配步骤后就可以使用 S3 SDK 的接口来访问 COS 上的文件了。
准备工作 1.已关联unirech注册腾讯云国际站账号关联注册量大优惠且可以有多重优势无-需-绑-定PayPal代-充-值腾讯云国际站、阿里云国际站、AWS亚马逊云、GCP谷歌云官方授权经销商靠谱T-G 飞机 unirech_dingding并且从访问管理控制台上获取了腾讯云密钥 SecretID 与 SecretKey。 2.已有一个集成了 S3 SDK并能正常运行的客户端应用。 本文目录 AndroidiOSNode.jsJavaPythonPHP.NETGoC Android
下面以 AWS Android SDK 2.14.2 版本为例介绍如何适配以便访问 COS 服务。对于终端访问 COS将永久密钥放到客户端代码中有极大的泄露风险我们建议您接入 STS 服务获取临时密钥详情可以参加腾讯云国际站的临时密钥生成及使用指引。
初始化 初始化实例时您需要设置临时密钥提供者和 Endpoint以存储桶所在地域是ap-guangzhou为例
AmazonS3Client s3 new AmazonS3Client(new AWSCredentialsProvider() {Overridepublic AWSCredentials getCredentials() {// 这里后台请求 STS 得到临时密钥信息return new BasicSessionCredentials(TempSecretID, TempSecretKey, STSSessionToken);}Overridepublic void refresh() {//}
});
s3.setEndpoint(cos.ap-guangzhou.myqcloud.com); iOS
以 AWS iOS SDK 2.10.2 版本为例介绍如何适配以便访问 COS 服务。对于终端访问 COS将永久密钥放到客户端代码中有极大的泄露风险我们建议您接入 STS 服务获取临时密钥详情可以参加腾讯云国际站的临时密钥生成及使用指引。
1. 实现 AWSCredentialsProvider 协议
-(AWSTaskAWSCredentials * *)credentials{
// 这里后台请求 STS 得到临时密钥信息AWSCredentials *credential [[AWSCredentials alloc]initWithAccessKey:TempSecretID secretKey:TempSecretKey sessionKey:STSSessionToken expiration:[NSDate dateWithTimeIntervalSince1970:1565770577]];return [AWSTask taskWithResult:credential];}
- (void)invalidateCachedTemporaryCredentials{}2. 提供临时密钥提供者和 Endpoint 以存储桶所在地域是ap-guangzhou为例
NSURL* bucketURL [NSURL URLWithString:http://cos.ap-guangzhou.myqcloud.com];AWSEndpoint* endpoint [[AWSEndpoint alloc] initWithRegion:AWSRegionUnknown service:AWSServiceS3 URL:bucketURL];
AWSServiceConfiguration* configuration [[AWSServiceConfiguration alloc]
initWithRegion:AWSRegionUSEast2 endpoint:endpoint
credentialsProvider:[MyCredentialProvider new]]; // MyCredentialProvider 实现了 AWSCredentialsProvider 协议[[AWSServiceManager defaultServiceManager] setDefaultServiceConfiguration:configuration];Node.js
下面以 AWS JS SDK 2.509.0 版本为例介绍如何适配以便访问 COS 服务。
初始化 初始化实例时设置腾讯云密钥和 Endpoint以存储桶所在地域是ap-guangzhou为例代码示例如下
var AWS require(aws-sdk);
AWS.config.update({accessKeyId: COS_SECRETID,secretAccessKey: COS_SECRETKEY,region: ap-guangzhou,endpoint: https://cos.ap-guangzhou.myqcloud.com,
});
s3 new AWS.S3({apiVersion: 2006-03-01});Java
下面以 AWS Java SDK 1.11.609 版本为例介绍如何适配以便访问 COS 服务。
1. 修改 AWS 配置和证书文件 说明 下面以 Linux 为例修改 AWS 配置和证书文件。
AWS SDK 的默认配置文件通常在用户目录下可以参考 配置和证书文件。
在配置文件文件位置是~/.aws/config中添加以下配置信息
[default]
s3
addressing_style virtual 在证书文件文件位置是~/.aws/credentials中配置腾讯云的密钥
[default]
aws_access_key_id [COS_SECRETID]
aws_secret_access_key [COS_SECRETKEY] 2. 代码中设置 Endpoint 以存储桶所在地域是ap-guangzhou为例代码示例如下
AmazonS3 s3Client AmazonS3ClientBuilder.standard().withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(http://cos.ap-guangzhou.myqcloud.com, ap-guangzhou)).build();Python
下面以 AWS Python SDK 1.9.205 版本为例介绍如何适配以便访问 COS 服务。
1. 修改 AWS 配置和证书文件
下面以 Linux 为例修改 AWS 配置和证书文件。
AWS SDK 的默认配置文件通常在用户目录下可以参考 配置和证书文件。
在配置文件文件位置是~/.aws/config 中添加以下配置
[default]
s3
signature_version s3
addressing_style virtual在证书文件文件位置是~/.aws/credentials中配置腾讯云的密钥
[default]
aws_access_key_id [COS_SECRETID]
aws_secret_access_key [COS_SECRETKEY] 2. 代码中设置 Endpoint 以存储桶所在地域是ap-guangzhou为例
client boto3.client(s3, endpoint_urlhttps://cos.ap-guangzhou.myqcloud.com)PHP
下面以 AWS PHP SDK 3.109.3 版本为例介绍如何适配以便访问 COS 服务。
1. 修改 AWS 配置和证书文件
下面以 Linux 为例修改 AWS 配置和证书文件。
AWS SDK 的默认配置文件通常在用户目录下可以参考 配置和证书文件。
在配置文件文件位置是~/.aws/config 中添加以下配置
[default]
s3
addressing_style virtual 在证书文件文件位置是~/.aws/credentials中配置腾讯云的密钥
[default]
aws_access_key_id [COS_SECRETID]
aws_secret_access_key [COS_SECRETKEY] 2. 代码中设置 Endpoint 以存储桶所在地域是ap-guangzhou为例
$S3Client new S3Client([region ap-guangzhou,version 2006-03-01,endpoint https://cos.ap-guangzhou.myqcloud.com
]);.NET
下面以 AWS .NET SDK 3.3.104.12 版本为例介绍如何适配以便访问 COS 服务。
初始化 初始化实例时设置腾讯云密钥和 Endpoint以存储桶所在地域是ap-guangzhou为例
string sAccessKeyId COS_SECRETID;
string sAccessKeySecret COS_SECRETKEY;
string region ap-guangzhou;var config new AmazonS3Config() { ServiceURL https://cos. region .myqcloud.com };
var client new AmazonS3Client(sAccessKeyId, sAccessKeySecret, config);Go
下面以 AWS Go SDK 1.21.9 版本为例介绍如何适配以便访问 COS 服务。
1. 根据密钥创建 session 以存储桶所在地域是ap-guangzhou为例
func newSession() (*session.Session, error) {
creds : credentials.NewStaticCredentials(COS_SECRETID, COS_SECRETKEY, )
region : ap-guangzhou
endpoint : http://cos.ap-guangzhou.myqcloud.com
config : aws.Config{Region: aws.String(region),Endpoint: endpoint,S3ForcePathStyle: aws.Bool(true),Credentials: creds,// DisableSSL: disableSSL,
}
return session.NewSession(config)
}2. 根据 session 创建 server 发起请求
sess, _ : newSession()
service : s3.New(sess)
// 以上传文件为例
fp, _ : os.Open(yourLocalFilePath)
defer fp.Close()
ctx, cancel : context.WithTimeout(context.Background(), time.Duration(30)*time.Second)
defer cancel()
service.PutObjectWithContext(ctx, s3.PutObjectInput{
Bucket: aws.String(examplebucket-1250000000),
Key: aws.String(exampleobject),
Body: fp,
})C
下面以 AWS C SDK 1.7.68 版本为例介绍如何适配以便访问 COS 服务。
1. 修改 AWS 配置和证书文件
下面以 Linux 为例修改 AWS 配置和证书文件。
AWS SDK 的默认配置文件通常在用户目录下可以参考 配置和证书文件。
在配置文件文件位置是~/.aws/config 中添加以下配置
[default]
s3
addressing_style virtual 在证书文件文件位置是~/.aws/credentials中配置腾讯云的密钥
[default]
aws_access_key_id [COS_SECRETID]
aws_secret_access_key [COS_SECRETKEY] 2. 代码中设置 Endpoint 以存储桶所在地域是ap-guangzhou为例代码示例如下
Aws::Client::ClientConfiguration awsCC;
awsCC.scheme Aws::Http::Scheme::HTTP;
awsCC.region ap-guangzhou;
awsCC.endpointOverride cos.ap-guangzhou.myqcloud.com;
Aws::S3::S3Client s3_client(awsCC);