运维开发:结合阿里云API实现CDN文件的刷新

2015 年 12 月 19 日16:39:17 5 11,525 views

页面功能:

运维开发:结合阿里云API实现CDN文件的刷新

运维开发:刷新阿里云CDN

 

相关的后端代码:

  1. #!/usr/bin/evn python
  2. #coding=utf-8
  3. __author__ = '戴儒锋'
  4. import json
  5. from bottle import get,post
  6. from bottle import template
  7. from controller.core import reMsg,checkArgs
  8. #导入阿里云API和阿里云KEY、SECRET
  9. import aliyun.api
  10. from conf import setting
  11. ali_key = setting.ali_key
  12. ali_secret = setting.ali_secret
  13. aliyun.setDefaultAppInfo(ali_key,ali_secret)
  14. @get('/cdn/')
  15. def callback():
  16.     return template('cdn')
  17. @post('/get_domains/')
  18. def callback():
  19.     #获取域名列表
  20.     a = aliyun.api.Cdn20141111DescribeUserDomainsRequest()
  21.     f = a.getResponse()
  22.     data = f.get('Domains').get('PageData')
  23.     return json.dumps(data)
  24. @post('/refresh_cdn/')
  25. def callback():
  26.     """刷新CDN"""
  27.     url_path = checkArgs('url_path',"文件URL路径")
  28.     s_type = checkArgs('s_type',"文件类型")
  29.     msg_list = []
  30.     for url in url_path.split():
  31.         a = aliyun.api.Cdn20141111RefreshObjectCachesRequest()
  32.         a.ObjectPath = url
  33.         a.ObjectType = s_type
  34.         try:
  35.             f = a.getResponse()
  36.             msg_list.append(f)
  37.         except Exception,e:
  38.             msg_list.append({"url":url,"status":"faild"})
  39.     print msg_list
  40.     return reMsg(0,"刷新完成,稍等会即生效")
  41. @post('/refresh_history_cdn/')
  42. def callback():
  43.     """选择文件刷新CDN"""
  44.     url_path = checkArgs('url_path',"文件URL路径")
  45.     a = aliyun.api.Cdn20141111RefreshObjectCachesRequest()
  46.     a.ObjectPath = url_path
  47.     a.ObjectType = "File"
  48.     try:
  49.         f = a.getResponse()
  50.         print f
  51.     except Exception,e:
  52.         print e
  53.     return reMsg(0,"刷新完成,稍等会即生效")

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:5   其中:访客  4   博主  1

    • sss 0

      撒旦撒旦

        • 跨境卖家导航 2

          @sss 好厉害–看看——~~

        • ping 0

          我的是直接用rsync 捕获close_write 事件,然后用python调用阿里云cdn的purge接口 :smile:

            • 江江 Admin

              @ping 嗯,分享下

              • 小娃 0

                @ping 分享一下哇