Open lgwtonylgw opened 1 year ago
通过设置QueryParams可以重写响应头
TemporarySignatureRequest request = new TemporarySignatureRequest(HttpMethodEnum.GET, huaWeiConfig.getExpireTime()); request.setBucketName(huaWeiConfig.getBucketName()); request.setObjectKey(remoteKey); Map<String, Object> queryParams = new HashMap<>(); queryParams.put("response-content-disposition", "attachment; filename=\"123.txt\""); request.setQueryParams(queryParams); TemporarySignatureResponse response = obsClient.createTemporarySignature(request); return response.getSignedUrl();
支持重写的key如下:ObsService.transGetObjectParams()中
void transGetObjectParams(GetObjectRequest request, Map<String, String> params) { if (null != request.getReplaceMetadata()) { if (ServiceUtils.isValid(request.getReplaceMetadata().getCacheControl())) { params.put("response-cache-control", request.getReplaceMetadata().getCacheControl()); }
if (ServiceUtils.isValid(request.getReplaceMetadata().getContentDisposition())) { params.put("response-content-disposition", request.getReplaceMetadata().getContentDisposition()); } if (ServiceUtils.isValid(request.getReplaceMetadata().getContentEncoding())) { params.put("response-content-encoding", request.getReplaceMetadata().getContentEncoding()); } if (ServiceUtils.isValid(request.getReplaceMetadata().getContentLanguage())) { params.put("response-content-language", request.getReplaceMetadata().getContentLanguage()); } if (ServiceUtils.isValid(request.getReplaceMetadata().getContentType())) { params.put("response-content-type", request.getReplaceMetadata().getContentType()); } if (ServiceUtils.isValid(request.getReplaceMetadata().getExpires())) { params.put("response-expires", request.getReplaceMetadata().getExpires()); } } if (ServiceUtils.isValid(request.getImageProcess())) { params.put("x-image-process", request.getImageProcess()); } if (request.getVersionId() != null) { params.put("versionId", request.getVersionId()); } if (request.getCacheOption() != null) { String cacheControl = request.getCacheOption().getCode() + ", ttl=" + request.getTtl(); params.put("x-cache-control", cacheControl); }
通过设置QueryParams可以重写响应头
TemporarySignatureRequest request = new TemporarySignatureRequest(HttpMethodEnum.GET, huaWeiConfig.getExpireTime()); request.setBucketName(huaWeiConfig.getBucketName()); request.setObjectKey(remoteKey); Map<String, Object> queryParams = new HashMap<>(); queryParams.put("response-content-disposition", "attachment; filename=\"123.txt\""); request.setQueryParams(queryParams); TemporarySignatureResponse response = obsClient.createTemporarySignature(request); return response.getSignedUrl();
支持重写的key如下:ObsService.transGetObjectParams()中
void transGetObjectParams(GetObjectRequest request, Map<String, String> params) { if (null != request.getReplaceMetadata()) { if (ServiceUtils.isValid(request.getReplaceMetadata().getCacheControl())) { params.put("response-cache-control", request.getReplaceMetadata().getCacheControl()); }