镜像回源
更新时间:2023-07-21
若您为 Bucket 配置了镜像回源,当用户访问该 Bucket 中某一 Object 时,发现该 Object 在 BOS 中并不存在,则 BOS 会立刻向预先配置好的回源地址请求该 Object,保证访问正常进行。在请求过程中,源站返回的数据会自动给到请求用户而用户对该过程无感。同时,该数据也会自动存入 BOS,提升日后该类请求的流畅性。参考镜像回源。
设置镜像回源(PutBucketMirroring)
参数 | 说明 |
---|---|
bucketName | 请求的bucket名称 |
bucketMirroringConfigurations | 镜像回源配置,具体参数与Api接口参数相同 |
如下代码通过构造对象参数来设置镜像回源:
// 构造镜像回源配置
BucketMirroringConfiguration config = BucketMirroringConfiguration.builder()
.mode("fetch")
.sourceUrl("http://xxx.bj.bcebos.com")
.resource("*")
.build();
List<BucketMirroringConfiguration> bucketMirroringConfigurations =
new ArrayList<BucketMirroringConfiguration>();
bucketMirroringConfigurations.add(config);
// 请求
this.client.putBucketMirroring(bucketName, bucketMirroringConfigurations);
如下代码通过直接传入Json来设置镜像回源:
// 构造镜像回源配置
String configJson = "{\"bucketMirroringConfiguration\":[{\"mode\":\"fetch\"," +
"\"sourceUrl\":\"http://xxx.bj.bcebos.com\",\"resource\":\"*\",\"prefix\":\"\"," +
"\"suffix\":\"\"," +
"\"fixedKey\":\"\",\"version\":\"v1\",\"customHeaders\":[],\"storageClass\":\"STANDARD\"," +
"\"ignoreHeaders\":[],\"passHeaders\":[]}]}";
// 请求
this.client.putBucketMirroring(bucketName, configJson);
获取镜像回源配置(GetBucketMirroring)
参数 | 说明 |
---|---|
bucketName | 请求的bucket名称 |
代码示例
// 请求
GetBucketMirroringResponse response = this.client.getBucketMirroring(bucketName);
System.out.println(response.getBucketMirroringConfiguration().toString());
删除镜像回源配置(DeleteBucketMirroring)
参数 | 说明 |
---|---|
bucketName | 请求的bucket名称 |
代码示例
this.client.deleteBucketMirroring(bucketName);