php阿里云oss签名链接重命名
使用的是阿里云官方SDK,现在你需要能生成一个链接并且可以在浏览器中把文件下载下来。
现在我们的问题是需要重命名文件,我们存在oss中的文件肯定应该是一串id
解决方法是filename
我二次封装了一下
function oss_signUrlNewName($fileName,$fileNewName, $timeout=120){
$accessKeyId = "id";
$accessKeySecret = "密钥";
$endpoint = "地区";
$bucket = "";
try {
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
} catch (OssException $e) {
return false;
}
$fileNewName = rawurlencode( $fileNewName ); //防止乱码
$oss_config = array($ossClient::OSS_SUB_RESOURCE => 'response-content-disposition=attachment%3Bfilename%3D'.$fileNewName);
// 生成GetObject的签名URL。
try {
$signedUrl = $ossClient->signUrl($bucket, $fileName, $timeout, $ossClient::OSS_HTTP_GET, $oss_config);
} catch (OssException $e) { return false; }
$signedUrl = str_replace( 'http://', 'https://', $signedUrl );
return $signedUrl ;
}
其他语言中应该也能实现

浙公网安备 33010602011771号