• django 和 七牛云 交互


    django 和 七牛云 交互

    • 七牛开发文档(https://developer.qiniu.com/kodo/sdk/1242/python)

    • 安装

      pip install qiniu
      
    • 初始化

      # access_key 个人中心的 ak
      # secret_key 个人中心的 sk
      from qiniu import Auth
      q = Auth(access_key, secret_key)
      
    • 上传流程

      from qiniu import Auth, put_file, etag
      import qiniu.config
      #需要填写你的 Access Key 和 Secret Key
      access_key = 'Access_Key'
      secret_key = 'Secret_Key'
      #构建鉴权对象
      q = Auth(access_key, secret_key)
      #要上传的空间
      bucket_name = 'Bucket_Name'
      #上传后保存的文件名,如果不写的话,需要填写None
      key = 'my-python-logo.png'
      #生成上传 Token,可以指定过期时间等
      token = q.upload_token(bucket_name, key, 3600)
      #要上传文件的本地路径,需要指定资源的绝对路径,如果资源名称相同,默认为第一次上传的资源。
      localfile = './sync/bbb.jpg'
      # 上传资源
      ret, info = put_file(token, key, localfile)
      # 上传成功,获取的状态码为200,没有错误信息
      info.status_code
      # 上传失败,获取的错误信息,
      info.error
      
    • 设置回调函数

      from qiniu import Auth, put_file, etag
      import qiniu.config
      #需要填写你的 Access Key 和 Secret Key
      access_key = 'Access_Key'
      secret_key = 'Secret_Key'
      
      #构建鉴权对象
      q = Auth(access_key, secret_key)
      #要上传的空间
      bucket_name = 'Bucket_Name'
      #上传后保存的文件名,如果不写的话,需要填写None
      key = 'my-python-logo.png'
      #上传文件到七牛后, 七牛将文件名和文件大小回调给业务服务器。
      policy={
       'callbackUrl':'http://your.domain.com/callback.php',
       'callbackBody':'filename=$(fname) & filesize=$(fsize)'
       }
      #生成上传 Token,可以指定过期时间等
      token = q.upload_token(bucket_name, key, 3600,policy)
      #要上传文件的本地路径,需要指定资源的绝对路径,如果资源名称相同,默认为第一次上传的资源。
      localfile = './sync/bbb.jpg'
      # 上传资源
      ret, info = put_file(token, key, localfile)
      # 上传成功,获取的状态码为200,没有错误信息
      info.status_code
      # 上传失败,获取的错误信息,
      info.error
      
    • 回调文件

      # callback.php
      
      <?php
        
      $data = $_REQUEST;
      
      file_put_contents('a.txt',$data);
      
    • 根据服务器地址,可以看回调数据

      success.png  2738  # 回调体里的信息 图片名称 和 图片大小。
  • 相关阅读:
    二维动态规划(2)
    细节是否真的打败爱情,十年后你还会爱我吗?
    C++的四种cast操作符的区别类型转换
    纯虚函数
    二维动态规划
    1,2,...n n个数m个丢失,找出丢失的数
    虚拟内存管理技术
    C++ 面试题总结
    【转】图的邻接链表 adjacent list of graph
    CIOCPServer的数据结构定义及内存池方案
  • 原文地址:https://www.cnblogs.com/ngngng/p/13891226.html
Copyright © 2020-2023  润新知