php阿里雲oss簽名連結重新命名
阿新 • • 發佈:2020-10-02
使用的是阿里雲官方SDK,現在你需要能生成一個連結並且可以在瀏覽器中把檔案下載下來。
現在我們的問題是需要重新命名檔案,我們存在oss中的檔案肯定應該是一串id
解決方法是filename
我二次封裝了一下
```php
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 ;
}
```
其他語言中應該也