ossClient.putObject() 怎么获得链接
时间: 2024-02-28 08:52:44 浏览: 136
上传文件成功后,可以通过以下方法来获取上传文件的访问链接:
1. 如果你在上传文件时没有指定 key,那么上传成功后,OSS 会自动生成一个唯一标识的 key。此时,你可以通过如下方式获取文件的访问链接:
```
String url = String.format("https://%s.%s/%s", bucketName, endpoint, objectName);
```
其中,bucketName 是存储文件的存储桶名称,endpoint 是 OSS 服务的访问域名,objectName 是上传文件时自动生成的唯一标识。
2. 如果你在上传文件时指定了 key,那么可以通过如下方式获取文件的访问链接:
```
String url = String.format("https://%s.%s/%s", bucketName, endpoint, key);
```
其中,key 是你指定的上传文件的唯一标识。
需要注意的是,获取文件访问链接需要保证该文件的 ACL(Access Control List)设置为公共读,否则无法通过链接访问该文件。你可以在上传文件时通过设置 ObjectMetadata 的 setObjectAcl 方法来设置文件的 ACL,例如:
```
ObjectMetadata metadata = new ObjectMetadata();
metadata.setObjectAcl(CannedAccessControlList.PublicRead);
ossClient.putObject(bucketName, key, inputStream, metadata);
```
在上述代码中,设置 CannedAccessControlList.PublicRead 表示将文件的 ACL 设置为公共读。
阅读全文