一般来说,图片/视频流量不走应用服务器,会占用API带宽,会将这类文件存储在对象存储服务器上。
public interface StorageClient {
/**
* 保存对象
* @param request
* @return
*/
public StorageResult save(StorageRequest request);
/**
* 以私有的方式保存对象
* @param request
* @return
*/
public StoragePrivateResult savePrivate(StorageRequest request);
/**
* 删除对象
* @param url
* @return
*/
public boolean delete(String url);
/**
* 删除私有对象
* @param key
* @return
*/
public boolean deletePrivate(String key);
/**
* 获取私有对象临时访问URL
* @param key
* @param expireSec
* @return
*/
public String getPrivateUrl(String key, Integer expireSec);
/**
* 通过URL获取文件Key
* @param url
* @return
*/
public String getKeyFormUrl(String url);
}
support包中默认提供AliStorageClient,MockStorageClient,QCloudStorageClient
mock就相当于只在控制台打印。
FwObjectStorageProperties 在Properties中,选择实现类 enable=aliyun 或 qcloud 或 mock
@Autowired
private StorageClient storageClient;
StorageResult result = storageClient.save(storageRequest);
if (result.isSuc()) {
...
}