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");
-(AWSTask<AWSCredentials *> *)credentials{// 这里后台请求 STS 得到临时密钥信息AWSCredentials *credential = [[AWSCredentials alloc]initWithAccessKey:@"<TempSecretID>" secretKey:@"<TempSecretKey>" sessionKey:@"<STSSessionToken>" expiration:[NSDate dateWithTimeIntervalSince1970:1565770577]];return [AWSTask taskWithResult:credential];}- (void)invalidateCachedTemporaryCredentials{}
ap-guangzhou 为例:NSURL* bucketURL = [NSURL URLWithString:@"https://cos.ap-guangzhou.myqcloud.com"];AWSEndpoint* endpoint = [[AWSEndpoint alloc] initWithRegion:AWSRegionUnknown service:AWSServiceS3 URL:bucketURL];AWSServiceConfiguration* configuration = [[AWSServiceConfiguration alloc]initWithRegion:AWSRegionUSEast2 endpoint:endpointcredentialsProvider:[MyCredentialProvider new]]; // MyCredentialProvider 实现了 AWSCredentialsProvider 协议[[AWSServiceManager defaultServiceManager] setDefaultServiceConfiguration:configuration];
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'});
~/.aws/config)中添加以下配置信息:[default]s3 =addressing_style = virtual
~/.aws/credentials)中配置腾讯云的密钥: [default]aws_access_key_id = [COS_SECRETID]aws_secret_access_key = [COS_SECRETKEY]
ap-guangzhou 为例,代码示例如下:AmazonS3 s3Client = AmazonS3ClientBuilder.standard().withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("http://cos.ap-guangzhou.myqcloud.com","ap-guangzhou")).build();
S3Client s3Client = S3Client.builder().endpointOverride(URI.create("http://cos.ap-guangzhou.myqcloud.com")).region(Region.of("ap-guangzhou")).build();
~/.aws/config) 中添加以下配置:[default]s3 =signature_version = s3addressing_style = virtual
~/.aws/credentials)中配置腾讯云的密钥: [default]aws_access_key_id = [COS_SECRETID]aws_secret_access_key = [COS_SECRETKEY]
ap-guangzhou 为例,代码示例如下:client = boto3.client('s3', endpoint_url='https://cos.ap-guangzhou.myqcloud.com')
~/.aws/config) 中添加以下配置:[default]s3 =addressing_style = virtual
~/.aws/credentials)中配置腾讯云的密钥: [default]aws_access_key_id = [COS_SECRETID]aws_secret_access_key = [COS_SECRETKEY]
ap-guangzhou 为例:$S3Client = new S3Client(['region' => 'ap-guangzhou','version' => '2006-03-01','endpoint' => 'https://cos.ap-guangzhou.myqcloud.com']);
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);
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)}
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,})
package mainimport ("context""fmt""github.com/aws/aws-sdk-go-v2/aws""github.com/aws/aws-sdk-go-v2/config""github.com/aws/aws-sdk-go-v2/credentials""github.com/aws/aws-sdk-go-v2/service/s3""os""strings")func main() {// 通过环境变量 SECRETID 和 SECRETKEY 获取密钥creds := credentials.NewStaticCredentialsProvider(os.Getenv("SECRETID"), os.Getenv("SECRETKEY"), "") //密钥customResolver := aws.EndpointResolverWithOptionsFunc(func(service, region string, options ...interface{}) (aws.Endpoint, error) {return aws.Endpoint{PartitionID: "aws",URL: "http://cos.ap-guangzhou.myqcloud.com",SigningRegion: "ap-guangzhou",}, nil})cfg, _ := config.LoadDefaultConfig(context.TODO(),config.WithCredentialsProvider(creds),config.WithEndpointResolverWithOptions(customResolver))s3Client := s3.NewFromConfig(cfg, func(o *s3.Options) {o.UsePathStyle = false // 使用virtual-host的方式访问})input := &s3.PutObjectInput{Body: strings.NewReader("xxxxxxx"),Bucket: aws.String("test-1250000000"), //存储桶名Key: aws.String("test"), //对象键StorageClass: "STANDARD",}result, err := s3Client.PutObject(context.Background(), input)if err != nil {panic(err)}fmt.Println(result)
~/.aws/config) 中添加以下配置:[default]s3 =addressing_style = virtual
~/.aws/credentials)中配置腾讯云的密钥: [default]aws_access_key_id = [COS_SECRETID]aws_secret_access_key = [COS_SECRETKEY]
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);
文档反馈