欢迎光临
我们一直在努力

阿里云CDN刷新链接接口实践

今天更改了一个线上的css文件,由于项目部署了cdn,需要对缓存进行清理。有两种方式;

一、清除cdn缓存

二、更改页面引入文件地址,如加入版本号

第一种方式需要登录阿里云,然后进行缓存清理操作,比较麻烦;

第二种方式如果是涉及的页面数量过多,在更改起来也是非常麻烦的。

我们使用的阿里云的cdn产品,记得以往的产品都有api接口,想通过阿里云cdn接口模式对链接进行缓存清除操作。

下面是php实例:

一、安装SDK

使用composer进行安装,命令:

composer require alibabacloud/client

二、获取阿里云参数

1、accessKeyId

2、accessSecret

建议使用子密钥

  1. <?php 
  2. /** 
  3.  * Created by PhpStorm. 
  4.  * User: Administrator 
  5.  * Date: 2019/10/29 0029 
  6.  * Time: 10:10 
  7.  */ 
  8.   
  9. namespace App\\index\\controller; 
  10.   
  11. use AlibabaCloud\\Client\\AlibabaCloud; 
  12. use AlibabaCloud\\Client\\Exception\\ClientException; 
  13. use AlibabaCloud\\Client\\Exception\\ServerException; 
  14. use think\\Controller; 
  15. use think\\Request; 
  16.   
  17. class Cdn extends Controller 
  18.     protected $accessKeyId; 
  19.     protected $accessSecret; 
  20.   
  21.     public function __construct(Request $request = null
  22.     { 
  23.         parent::__construct($request); 
  24.         $this->accessKeyId  = \’123456789\’
  25.         $this->accessSecret = \’123456789\’
  26.     } 
  27.   
  28.     public function index() 
  29.     { 
  30.         $url = \’http://www.demo.com/css/index.css\’; 
  31.         AlibabaCloud::accessKeyClient($this->accessKeyId, $this->accessSecret) 
  32.             ->regionId(\’cn-hangzhou\’
  33.             ->asDefaultClient(); 
  34.         try { 
  35.             $result = AlibabaCloud::rpc() 
  36.                 ->product(\’Cdn\’
  37.                 // ->scheme(\’https\’) // https | http 
  38.                 ->version(\’2018-05-10\’
  39.                 ->action(\’RefreshObjectCaches\’
  40.                 ->method(\’POST\’
  41.                 ->host(\’cdn.aliyuncs.com\’
  42.                 ->options([ 
  43.                     \’query\’ => [ 
  44.                         \’RegionId\’   => \”cn-hangzhou\”
  45.                         \’ObjectPath\’ => $url, 
  46.                     ], 
  47.                 ]) 
  48.                 ->request(); 
  49.             $res    = $result->toArray(); 
  50.             if(isset($res[\’RefreshTaskId\’])) { 
  51.                 echo \’刷新成功\’
  52.             } else { 
  53.                 echo \’刷新失败\’
  54.             } 
  55.         } 
  56.         catch(ClientException $e) { 
  57.             echo $e->getErrorMessage() . PHP_EOL; 
  58.         } 
  59.         catch(ServerException $e) { 
  60.             echo $e->getErrorMessage() . PHP_EOL; 
  61.         } 
  62.   
  63.     } 

建议在提交刷新后,2分钟后查看效果,注意要清除浏览器缓存哦!

赞(0) 打赏
主机商所有内容均来自网络,若无意侵犯到您的权利,请及时与联系 QQ 2232175042,将在48小时内删除相关内容!!主机商 » 阿里云CDN刷新链接接口实践

主机商评测网 找服务器 更专业 更方便 更快捷!

专注IDC行业资源共享发布,给大家带来方便快捷的资源查找平台!

联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫