加速OSS资源远距离上传和下载

更新时间:2025-02-28 08:39:09

如果您希望实现Bucket远距离数据传输加速,例如从中国内地向非中国内地Bucket请求加速上传或下载文件,您可以开启传输加速。传输加速利用全球分布的云机房,将全球各地用户对Bucket的访问,经过智能路由解析至就近的接入点,使用优化后的网络及协议,为云存储的上传、下载提供端到端的加速方案。

前提条件

当前账号已完成实名认证。具体步骤,请参见未实名认证账号认证引导

使用场景

  • 远距离数据传输加速

    例如全球论坛、在线协同办公平台等,部分客户会因传输距离较远导致上传和下载体验非常差。传输加速功能可以让全球各地的客户使用优化后的网络来传输数据,极大地提升上传和下载速度,让不同地域的用户都能有很好的访问体验。

  • GB、TB级大文件上传和下载

    通过互联网远距离上传和下载大文件时,经常会因为网络延迟过大而导致传输失败。传输加速功能使用优化的互联网传输链路、调优的协议栈与传输算法,可大幅减少远距离互联网传输超时的比例。您还可以结合使用传输加速功能与分片上传断点续传下载,形成远距离大文件上传和下载的解决方案。

  • 非静态、非热点数据下载加速

    例如相册应用、游戏、电商、社交应用的评论内容、企业门户网站、金融类APP等,用户的下载体验直接影响产品竞争力和客户留存率。传输加速功能作为专为OSS上传、下载加速而设计的功能,可以最大限度利用客户端的网络能力,提升用户的下载体验。

注意事项

  • 通过传输加速Endpoint上传数据时,会产生加速上传流量。通过传输加速Endpoint下载数据时,会产生加速下载流量,同时会与OSS外网流出流量同时计算。例如,通过传输加速Endpoint从开启传输加速功能的存储空间中下载了1 GB的数据,则会产生1 GB传输加速费用和1 GB外网流出流量费用。更多信息,请参见传输加速费用流量费用

  • 开启传输加速功能后,必须使用OSS的传输加速域名才会提升访问速度。此外,OSS提供的默认Endpoint仍可正常使用。在不需要传输加速的场景中,您可以使用默认Endpoint以减少传输加速的费用。关于默认Endpoint,请参见OSS地域和访问域名

  • 传输加速Endpoint仅支持HTTP/HTTPS协议的API接入,不支持RTMP协议等非HTTP/HTTPS协议的API接入。

  • 为保证数据传输安全,传输加速后端加速逻辑会视情况选择使用HTTPS协议进行数据传输。所以,客户端使用HTTP协议通过传输加速域名访问OSS时,在OSS的访问日志中查看到访问协议可能是HTTPS。

开启传输加速

开启传输加速后,Bucket会新增以下两种传输加速Endpoint,同时保留默认Endpoint。

  • 全球加速Endpoint:地址为oss-accelerate.aliyuncs.com。传输加速接入点分布在全球各地,全球各地的Bucket均可以使用该域名进行传输加速。

  • 非中国内地加速Endpoint:地址为oss-accelerate-overseas.aliyuncs.com。传输加速接入点分布在除中国内地以外的各地域,仅在中国香港及海外各地域Bucket绑定未备案的域名做CNAME指向时使用。

您可以通过以下多种方式开启传输加速。

使用OSS控制台
使用阿里云SDK
使用命令行工具ossutil
  1. 登录OSS管理控制台

  2. 单击Bucket 列表,然后单击目标Bucket名称。

  3. 在左侧导航栏,选择Bucket 配置>传输加速

  4. 传输加速页面,打开开启传输加速开关,然后在弹出的对话框单击确定

    传输加速开启操作会在30分钟内全网生效。关闭传输加速操作也需要在30分钟内全网生效。

以下仅列举常见SDK开启传输加速的代码示例。关于其他SDK的开启传输加速的代码示例,请参见SDK简介

Java
Python
Go
import com.aliyun.oss.ClientException;
import com.aliyun.oss.OSS;
import com.aliyun.oss.common.auth.*;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;

public class Demo {

    public static void main(String[] args) throws Exception {
        // Endpoint以华东1(杭州)为例,其它Region请按实际情况填写。
        String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
        // 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
        EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
        // 填写Bucket名称,例如examplebucket。
        String bucketName = "examplebucket";
        // 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou。
        String region = "cn-hangzhou";

        // 创建OSSClient实例。
        ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
        clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);        
        OSS ossClient = OSSClientBuilder.create()
        .endpoint(endpoint)
        .credentialsProvider(credentialsProvider)
        .clientConfiguration(clientBuilderConfiguration)
        .region(region)               
        .build();

        try {
            // 设置Bucket的传输加速状态。
            // 当设置enabled为true时,表示开启传输加速;当设置enabled为false时,表示关闭传输加速。
            boolean enabled = true;
            ossClient.setBucketTransferAcceleration(bucketName, enabled);

        } catch (OSSException oe) {
            System.out.println("Caught an OSSException, which means your request made it to OSS, "
                    + "but was rejected with an error response for some reason.");
            System.out.println("Error Message:" + oe.getErrorMessage());
            System.out.println("Error Code:" + oe.getErrorCode());
            System.out.println("Request ID:" + oe.getRequestId());
            System.out.println("Host ID:" + oe.getHostId());
        } catch (ClientException ce) {
            System.out.println("Caught an ClientException, which means the client encountered "
                    + "a serious internal problem while trying to communicate with OSS, "
                    + "such as not being able to access the network.");
            System.out.println("Error Message:" + ce.getMessage());
        } finally {
            if (ossClient != null) {
                ossClient.shutdown();
            }
        }
    }
}
import oss2
from oss2.credentials import EnvironmentVariableCredentialsProvider

# 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# 填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# 填写Endpoint对应的Region信息,例如cn-hangzhou。注意,v4签名下,必须填写该参数
region = "cn-hangzhou"

# examplebucket填写存储空间名称。
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# 设置Bucket的传输加速状态。
# 当设置enabled为true时,表示开启传输加速;当设置enabled为false时,表示关闭传输加速。
enabled = 'true'
bucket.put_bucket_transfer_acceleration(enabled)
package main

import (
	"context"
	"flag"
	"log"

	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
)

// 定义全局变量
var (
	region     string // 存储区域
	bucketName string // 存储空间名称
)

// init函数用于初始化命令行参数
func init() {
	flag.StringVar(&region, "region", "", "The region in which the bucket is located.")
	flag.StringVar(&bucketName, "bucket", "", "The name of the bucket.")
}

func main() {
	// 解析命令行参数
	flag.Parse()

	// 检查bucket名称是否为空
	if len(bucketName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, bucket name required")
	}

	// 检查region是否为空
	if len(region) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, region required")
	}

	// 加载默认配置并设置凭证提供者和区域
	cfg := oss.LoadDefaultConfig().
		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
		WithRegion(region)

	// 创建OSS客户端
	client := oss.NewClient(cfg)

	// 创建设置存储空间传输加速的请求
	request := &oss.PutBucketTransferAccelerationRequest{
		Bucket: oss.Ptr(bucketName), // 存储空间名称
		TransferAccelerationConfiguration: &oss.TransferAccelerationConfiguration{
			Enabled: oss.Ptr(true), // 启用传输加速
		},
	}

	// 执行设置存储空间传输加速的请求
	result, err := client.PutBucketTransferAcceleration(context.TODO(), request)
	if err != nil {
		log.Fatalf("failed to put bucket transfer acceleration %v", err)
	}

	// 打印设置存储空间传输加速的结果
	log.Printf("put bucket transfer acceleration result:%#v\n", result)
}

您可以使用命令行工具ossutil来开启传输加速,ossutil的安装请参见安装ossutil

以下命令用于为存储空间examplebucket配置传输加速。

ossutil api put-bucket-transfer-acceleration --bucket examplebucket --transfer-acceleration-configuration "{\"Enabled\":\"true\"}"

关于该命令的更多信息,请参见put-bucket-transfer-acceleration

使用传输加速

使用浏览器
使用命令行工具ossutil
使用图形化管理工具ossbrowser 2.0
使用阿里云SDK

通过浏览器访问OSS时,将文件URLEndpoint字段替换为传输加速Endpoint,例如https://test.oss-cn-shenzhen.aliyuncs.com/myphoto.jpg需改为https://test.oss-accelerate.aliyuncs.com/myphoto.jpg。如果文件访问权限为私有,则还需要加上签名信息。

  • 通过ossutil访问OSS时持久启用传输加速功能,您可以将配置文件内的Endpoint替换为传输加速Endpoint。

    • 首先,找到并打开ossutil的配置文件。默认情况下,配置文件位于以下路径:

      • Linux/home/user/.ossutilconfig

      • WindowsC:\Users\user\.ossutilconfig

      • macOS/Users/user/.ossutilconfig

      如果您在配置ossutil时指定了不同的路径,请使用您指定的路径。

    • 修改Endpoint,在配置文件中,找到endpoint字段,并将其值修改为传输加速Endpoint:

      [Credentials]
      endpoint = oss-accelerate.aliyuncs.com
      accessKeyID = LTAI4Fw2NbDUCV8z********
      accessKeySecret = 67DLVBkH7EamOjy2W5RVAH********
      region=cn-hangzhou

      保存对配置文件的修改。

  • 在使用ossutil相关命令时,还可以在命令示例中增加-e oss-accelerate.aliyuncs.com,仅对当前命令有效。以下命令表示在cp命令上传场景中使用了传输加速Endpoint。

    ossutil cp /path/to/local/file oss://examplebucket/exampleobject  -e  oss-accelerate.aliyuncs.com

各配置项说明如下:

参数

说明

AccessKeyIDAccessKeySecret

填写账号的AccessKey(AK)信息。获取AccessKey的方式,请参见创建AccessKey

重要

为保证数据安全,推荐您使用RAM用户的AccessKey登录ossbrowser 2.0。使用RAM用户登录之前,需要为RAM用户授予AliyunOSSFullAccessAliyunRAMFullAccess以及AliyunSTSAssumeRoleAccess的权限。具体操作,请参见RAM用户授权

Endpoint

选择指定域名,并填写传输加速Endpoint https://oss-accelerate.aliyuncs.com

预设OSS路径

当您只拥有Bucket中某部分资源权限时,需填写OSS资源路径,示例如下:

  1. 访问整个Bucket空间,例如访问bucketname下的所有文件。image

  2. 访问Bucket内某个目录,例如访问bucketname中的folder目录。

    image

  3. 访问Bucket内某个具体文件,例如访问bucketnamefolder下的file文件。

    image

默认地域

请选择目标Bucket所处地域。

配置示例如下:

image

通过各语言SDK访问OSS时,将Endpoint设置为传输加速Endpoint,此处以简单上传和简单下载为例介绍。

  • 简单上传

    Java
    Go
    import com.aliyun.oss.ClientException;
    import com.aliyun.oss.OSS;
    import com.aliyun.oss.common.auth.*;
    import com.aliyun.oss.OSSClientBuilder;
    import com.aliyun.oss.OSSException;
    import com.aliyun.oss.model.PutObjectRequest;
    import java.io.File;
    
    public class Demo {
    
        public static void main(String[] args) throws Exception {
            // 填写传输加速Endpoint。以全球加速Endpoint为例。
            String endpoint = "https://oss-accelerate.aliyuncs.com";
            // 强烈建议不要把访问凭证保存到工程代码里,否则可能导致访问凭证泄露,威胁您账号下所有资源的安全。本代码示例以从环境变量中获取访问凭证为例。运行本代码示例之前,请先配置环境变量。
            EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
            // 填写Bucket名称,例如examplebucket。
            String bucketName = "examplebucket";
            // 填写Object完整路径,例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。
            String objectName = "exampledir/exampleobject.txt";
            // 填写本地文件的完整路径,例如D:\\localpath\\examplefile.txt。
            // 如果未指定本地路径,则默认从示例程序所属项目对应本地路径中上传文件。
            String filePath= "D:\\localpath\\examplefile.txt";
    
            // 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou。
            String region = "cn-hangzhou";
    
            // 创建OSSClient实例。
            ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
            // 显式声明使用V4签名
            clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);        
            OSS ossClient = OSSClientBuilder.create()
            .endpoint(endpoint)
            .credentialsProvider(credentialsProvider)
            .clientConfiguration(clientBuilderConfiguration)
            .region(region)               
            .build();
    
            try {
                // 创建PutObjectRequest对象。            
                PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, objectName, filePath);
                // 如果需要上传时设置存储类型和访问权限,请参考以下示例代码。
                // ObjectMetadata metadata = new ObjectMetadata();
                // metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard.toString());
                // metadata.setObjectAcl(CannedAccessControlList.Private);
                // putObjectRequest.setMetadata(metadata);
    
                // 上传文件。
                ossClient.putObject(putObjectRequest);
            } catch (OSSException oe) {
                System.out.println("Caught an OSSException, which means your request made it to OSS, "
                        + "but was rejected with an error response for some reason.");
                System.out.println("Error Message:" + oe.getErrorMessage());
                System.out.println("Error Code:" + oe.getErrorCode());
                System.out.println("Request ID:" + oe.getRequestId());
                System.out.println("Host ID:" + oe.getHostId());
            } catch (ClientException ce) {
                System.out.println("Caught an ClientException, which means the client encountered "
                        + "a serious internal problem while trying to communicate with OSS, "
                        + "such as not being able to access the network.");
                System.out.println("Error Message:" + ce.getMessage());
            } finally {
                if (ossClient != null) {
                    ossClient.shutdown();
                }
            }
        }
    }            
    package main
    
    import (
    	"context"
    	"flag"
    	"log"
    
    	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
    	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
    )
    
    // 定义全局变量
    var (
    	region     string // 存储区域
    	bucketName string // 存储空间名称
    	objectName string // 对象名称
    )
    
    // init函数用于初始化命令行参数
    func init() {
    	flag.StringVar(&region, "region", "", "The region in which the bucket is located.")
    	flag.StringVar(&bucketName, "bucket", "", "The name of the bucket.")
    	flag.StringVar(&objectName, "object", "", "The name of the object.")
    }
    
    func main() {
    	// 解析命令行参数
    	flag.Parse()
    
    	// 检查bucket名称是否为空
    	if len(bucketName) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, bucket name required")
    	}
    
    	// 检查region是否为空
    	if len(region) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, region required")
    	}
    
    	// 检查object名称是否为空
    	if len(objectName) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, object name required")
    	}
    
    	// 加载默认配置并设置凭证提供者和区域
    	cfg := oss.LoadDefaultConfig().
    		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
    		WithRegion(region).
    		WithEndpoint("oss-accelerate.aliyuncs.com") // 设置加速域名
    
    	// 创建OSS客户端
    	client := oss.NewClient(cfg)
    
    	// 填写要上传的本地文件路径和文件名称,例如 /Users/localpath/exampleobject.txt
    	localFile := "/Users/localpath/exampleobject.txt"
    
    	// 创建上传对象的请求
    	putRequest := &oss.PutObjectRequest{
    		Bucket:       oss.Ptr(bucketName),      // 存储空间名称
    		Key:          oss.Ptr(objectName),      // 对象名称
    		StorageClass: oss.StorageClassStandard, // 指定对象的存储类型为标准存储
    		Acl:          oss.ObjectACLPrivate,     // 指定对象的访问权限为私有访问
    	}
    
    	// 执行上传对象的请求
    	result, err := client.PutObjectFromFile(context.TODO(), putRequest, localFile)
    	if err != nil {
    		log.Fatalf("failed to put object from file %v", err)
    	}
    
    	// 打印上传对象的结果
    	log.Printf("put object result:%#v\n", result)
    }
    
  • 简单下载

    Java
    Go
    import com.aliyun.oss.ClientException;
    import com.aliyun.oss.OSS;
    import com.aliyun.oss.common.auth.*;
    import com.aliyun.oss.OSSClientBuilder;
    import com.aliyun.oss.OSSException;
    import com.aliyun.oss.model.GetObjectRequest;
    import java.io.File;
    
    public class Demo {
    
        public static void main(String[] args) throws Exception {
            // 填写传输加速Endpoint。以全球加速Endpoint为例。
            String endpoint = "https://oss-accelerate.aliyuncs.com";
            // 强烈建议不要把访问凭证保存到工程代码里,否则可能导致访问凭证泄露,威胁您账号下所有资源的安全。本代码示例以从环境变量中获取访问凭证为例。运行本代码示例之前,请先配置环境变量。
            EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider();
            // 填写Bucket名称,例如examplebucket。
            String bucketName = "examplebucket";
            // 填写不包含Bucket名称在内的Object完整路径,例如testfolder/exampleobject.txt。
            String objectName = "testfolder/exampleobject.txt";
            String filePath = "D:\\localpath\\examplefile.txt";
    
            // 填写Bucket所在地域。以华东1(杭州)为例,Region填写为cn-hangzhou。
            String region = "cn-hangzhou";
    
            // 创建OSSClient实例。
            ClientBuilderConfiguration clientBuilderConfiguration = new ClientBuilderConfiguration();
            // 显式声明使用V4签名
            clientBuilderConfiguration.setSignatureVersion(SignVersion.V4);        
            OSS ossClient = OSSClientBuilder.create()
            .endpoint(endpoint)
            .credentialsProvider(credentialsProvider)
            .clientConfiguration(clientBuilderConfiguration)
            .region(region)               
            .build();
    
            try {
                // 下载Object到本地文件,并保存到指定的本地路径中。如果指定的本地文件存在会覆盖,不存在则新建。
                // 如果未指定本地路径,则下载后的文件默认保存到示例程序所属项目对应本地路径中。
                ossClient.getObject(new GetObjectRequest(bucketName, objectName), new File(filePath));
            } catch (OSSException oe) {
                System.out.println("Caught an OSSException, which means your request made it to OSS, "
                        + "but was rejected with an error response for some reason.");
                System.out.println("Error Message:" + oe.getErrorMessage());
                System.out.println("Error Code:" + oe.getErrorCode());
                System.out.println("Request ID:" + oe.getRequestId());
                System.out.println("Host ID:" + oe.getHostId());
            } catch (ClientException ce) {
                System.out.println("Caught an ClientException, which means the client encountered "
                        + "a serious internal problem while trying to communicate with OSS, "
                        + "such as not being able to access the network.");
                System.out.println("Error Message:" + ce.getMessage());
            } finally {
                if (ossClient != null) {
                    ossClient.shutdown();
                }
            }
        }
    }
    package main
    
    import (
    	"context"
    	"flag"
    	"log"
    
    	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
    	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
    )
    
    // 定义全局变量
    var (
    	region     string // 存储区域
    	bucketName string // 存储空间名称
    	objectName string // 对象名称
    )
    
    // init函数用于初始化命令行参数
    func init() {
    	flag.StringVar(&region, "region", "", "The region in which the bucket is located.")
    	flag.StringVar(&bucketName, "bucket", "", "The name of the bucket.")
    	flag.StringVar(&objectName, "object", "", "The name of the object.")
    }
    
    func main() {
    	// 解析命令行参数
    	flag.Parse()
    
    	// 检查bucket名称是否为空
    	if len(bucketName) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, bucket name required")
    	}
    
    	// 检查region是否为空
    	if len(region) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, region required")
    	}
    
    	// 检查object名称是否为空
    	if len(objectName) == 0 {
    		flag.PrintDefaults()
    		log.Fatalf("invalid parameters, object name required")
    	}
    
    	// 加载默认配置并设置凭证提供者和区域
    	cfg := oss.LoadDefaultConfig().
    		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
    		WithRegion(region).
    		WithEndpoint("oss-accelerate.aliyuncs.com") // 设置加速域名
    
    	// 创建OSS客户端
    	client := oss.NewClient(cfg)
    
    	// 填写本地文件路径和文件名称,例如 /Users/localpath/downloadobject.txt
    	localFile := "/Users/localpath/exampleobject.txt"
    
    	// 创建下载对象到本地文件的请求
    	getRequest := &oss.GetObjectRequest{
    		Bucket: oss.Ptr(bucketName), // 存储空间名称
    		Key:    oss.Ptr(objectName), // 对象名称
    	}
    
    	// 执行下载对象到本地文件的操作并处理结果
    	result, err := client.GetObjectToFile(context.TODO(), getRequest, localFile)
    	if err != nil {
    		log.Fatalf("failed to get object to file %v", err)
    	}
    
    	log.Printf("Get object sucessfully, Result: HTTPStatusCode=%d, ContentLength=%d\n", result.StatusCode, result.ContentLength)
    }
    

测试传输加速效果

使用命令行工具ossutil
使用在线工具

通过在ossutil命令示例中测试未开启传输加速前(即使用-e oss-us-west-1.aliyuncs.com)以及开启传输加速后(即使用-e oss-accelerate.aliyuncs.com)上传文件所需时间的差异。

您可以通过OSS互联网连通与测速工具测试您本地访问全球各地数据中心时,开启传输加速与未开启传输加速的访问速度。

常见问题

除传输加速外,OSS是否提供其他加速方案?

除传输加速外,您还可以选择CDN加速实现加速访问OSS资源。更多信息,请参见CDN加速访问

是否支持同时配置多种加速方案?

支持。例如您已开启CDN加速,并希望同时使用传输加速。您只需要开启传输加速,并将CDN回源到传输加速域名即可。更多信息,请参见绑定CDN加速域名

为什么使用传输加速Endpoint无法列举Bucket?

传输加速服务仅针对携带Bucket名称信息的三级域名(格式为https://BucketName.oss-accelerate.aliyuncs.com)提供解析服务。而列举Bucket的请求域名中不携带Bucket名称信息,因此您无法使用传输加速Endpoint列举Bucket。建议您通过默认Endpoint列举目标地域的Bucket,例如https://oss-cn-hangzhou.aliyuncs.com

相关API

以上操作方式底层基于API实现,如果您的程序自定义要求较高,您可以直接发起REST API请求。直接发起REST API请求需要手动编写代码计算签名。更多信息,请参见PutBucketTransferAcceleration

  • 本页导读 (1)
  • 前提条件
  • 使用场景
  • 注意事项
  • 开启传输加速
  • 使用传输加速
  • 测试传输加速效果
  • 常见问题
  • 相关API
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等