由于 AK/SK 信息存放在客户端有泄漏风险,在客户端上传的过程中,通常需要服务端配合生成上传签名或凭证,下发给客户端。您可参考以下方法生成临时 Token。
服务端根据账号的 AK/SK 信息和相关的 policy 生成临时的上传密钥下发给客户端,客户端根据临时密钥和上传参数自行计算签名并发送 OpenAPI 请求。
设置 AK/SK 和地域,具体可参考初始化。
<?php include_once(__DIR__ . '/../../vendor/autoload.php'); use Volc\Service\ImageX; $xclient = ImageX::getInstance(); // call below method if you dont set ak and sk in ~/.volc/config $xclient->setAccessKey("ak"); $xclient->setSecretKey("sk"); $serviceIDList = []; $response = $xclient->getUploadAuth($serviceIDList, 3600); echo json_encode($response); echo "\n=======================\n"; $uploadPolicy = [ 'FileSizeUpLimit' => '1000000', //上传文件大小上限 'FileSizeBottomLimit' => '5000', //上传文件大小下限 'ContentTypeBlackList' => ['image/gif'] //上传文件的 Content-Type 黑名单 ]; $tag = [ 'UploadOverwrite' => 'true', //开启重名覆盖上传 'UploadPolicy' => json_encode($uploadPolicy) ]; $response = $xclient->getUploadAuth($serviceIDList,3600,'',$tag); print_r($response);