saveas.php 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. require_once __DIR__ . '/../autoload.php';
  3. use Qiniu\Auth;
  4. use Qiniu\Processing\PersistentFop;
  5. // 控制台获取密钥:https://portal.qiniu.com/user/key
  6. $accessKey = getenv('QINIU_ACCESS_KEY');
  7. $secretKey = getenv('QINIU_SECRET_KEY');
  8. // 处理结果另存为
  9. // 参考文档:https://developer.qiniu.com/dora/api/1305/processing-results-save-saveas
  10. // 生成EncodedEntryURI的值,<Key>为生成缩略图的文件名
  11. $entry = '<bucket>:<Key>';
  12. // 生成的值
  13. $encodedEntryURI = \Qiniu\base64_urlSafeEncode($entry);
  14. // 使用 SecretKey 对新的下载 URL 进行 HMAC1-SHA1 签名
  15. $newurl = "78re52.com1.z0.glb.clouddn.com/resource/Ship.jpg?imageView2/2/w/200/h/200|saveas/" . $encodedEntryURI;
  16. $sign = hash_hmac("sha1", $newurl, $secretKey, true);
  17. // 对签名进行 URL 安全的 Base64 编码
  18. $encodedSign = \Qiniu\base64_urlSafeEncode($sign);
  19. // 最终得到的完整下载 URL
  20. $finalURL = "http://" . $newurl . "/sign/" . $accessKey . ":" . $encodedSign;
  21. $callbackBody = file_get_contents("$finalURL");
  22. echo $callbackBody;