亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法

python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法

熱門標(biāo)簽:千陽自動外呼系統(tǒng) 工廠智能電話機(jī)器人 西藏智能外呼系統(tǒng)五星服務(wù) 在哪里辦理400電話號碼 清遠(yuǎn)360地圖標(biāo)注方法 平頂山外呼系統(tǒng)免費 原裝電話機(jī)器人 400電話申請服務(wù)商選什么 江蘇客服外呼系統(tǒng)廠家

簽名

import base64
import json
import time
from datetime import datetime
import hmac
from hashlib import sha1

access_key_id = ''
# 請?zhí)顚懩腁ccessKeySecret。
access_key_secret = ''
# host的格式為 bucketname.endpoint ,請?zhí)鎿Q為您的真實信息。
host = ''
# callback_url為 上傳回調(diào)服務(wù)器的URL,請將下面的IP和Port配置為您自己的真實信息。
callback_url = ""
# 用戶上傳文件時指定的前綴。
upload_dir = 'user-dir-prefix/'
expire_time = 1200
expire_syncpoint = int(time.time() + expire_time)

policy_dict = {
  'expiration': datetime.utcfromtimestamp(expire_syncpoint).isoformat() + 'Z',
  'conditions': [
    {"bucket": "test-paige"},
    ['starts-with', '$key', 'user/test/']
  ]
}
policy = json.dumps(policy_dict).strip()
policy_encode = base64.b64encode(policy.encode())
signature = base64.encodebytes(hmac.new(access_key_secret.encode(), policy_encode, sha1).digest())

callback_dict = {
  'callbackUrl': callback_url,
  'callbackBody': 'filename=${object}size=${size}mimeType=${mimeType}height=${imageInfo.height}width=${'
          'imageInfo.width}',
  'callbackBodyType': 'application/json'
}

callback = base64.b64encode(json.dumps(callback_dict).strip().encode()).decode()

var = {
  'accessid': access_key_id,
  'host': host,
  'policy': policy_encode.decode(),
  'signature': signature.decode().strip(),
  'expire': expire_syncpoint,
  'callback': callback
}

回調(diào)驗簽

import asyncio
import base64
import time
import aiomysql
import rsa
from aiohttp import web, ClientSession
from urllib import parse
import uuid


def success(msg='', data=None):
  if data is None:
    data = {}
  dict_data = {
    'code': 1,
    'msg': msg,
    'data': data
  }
  return web.json_response(dict_data)


def failed(msg='', data=None):
  if data is None:
    data = {}
  dict_data = {
    'code': 0,
    'msg': msg,
    'data': data
  }
  return web.json_response(dict_data)


async def handle(request):
  """
  獲取連接池
  :param web.BaseRequest request:
  :return:
  """
  authorization_base64 = request.headers['authorization']
  x_oss_pub_key_url_base64 = request.headers['x-oss-pub-key-url']
  pub_key_url = base64.b64decode(x_oss_pub_key_url_base64.encode())
  authorization = base64.b64decode(authorization_base64.encode())
  path = request.path

  async with ClientSession() as session:
    async with session.get(pub_key_url.decode()) as resp:
      pub_key_body = await resp.text()
      pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(pub_key_body.encode())
      body = await request.content.read()
      auth_str = parse.unquote(path) + '\n' + body.decode()
      parse_url = parse.parse_qs(body.decode())
      print(parse_url)
      try:
        rsa.verify(auth_str.encode(), authorization, pubkey)
        pool = request.app['mysql_pool']
        async with pool.acquire() as conn:
          async with conn.cursor() as cur:
            id = str(uuid.uuid4())
            url = parse_url['filename'][0]
            mime = parse_url['mimeType'][0]
            disk = 'oss'
            time_at = time.strftime("%Y-%m-%d %H:%I:%S", time.localtime())
            sql = "INSERT INTO media(id,url,mime,disk,created_at,updated_at) VALUES(%s,%s,%s,%s,%s,%s)"
            await cur.execute(sql, (id, url, mime, disk, time_at, time_at))
            await conn.commit()
        dict_data = {
          'id': id,
          'url': url,
          'cdn_url': 'https://cdn.***.net' + '/' + url,
          'mime': mime,
          'disk': disk,
          'created_at': time_at,
          'updated_at': time_at,
        }
        return success(data=dict_data)
      except rsa.pkcs1.VerificationError:
        return failed(msg='驗證錯誤')


async def init(loop):
  # 創(chuàng)建連接池
  mysql_pool = await aiomysql.create_pool(host='127.0.0.1', port=3306,
                      user='', password='',
                      db='', loop=loop)

  async def on_shutdown(application):
    """
    接收到關(guān)閉信號時,要先關(guān)閉連接池,并等待連接池關(guān)閉成功.
    :param web.Application application:
    :return:
    """
    application['mysql_pool'].close()
    # 沒有下面這句話會報錯 RuntimeError: Event loop is closed ,因為連接池沒有真正關(guān)關(guān)閉程序就關(guān)閉了,引發(fā)python的報錯
    await application['mysql_pool'].wait_closed()

  application = web.Application()
  application.on_shutdown.append(on_shutdown)
  # 把連接池放到 application 實例中
  application['mysql_pool'] = mysql_pool
  application.add_routes([web.get('/', handle), web.post('/oss', handle)])
  return application


if __name__ == '__main__':
  loop = asyncio.get_event_loop()
  application = loop.run_until_complete(init(loop))
  web.run_app(application, host='127.0.0.1')
  loop.close()

到此這篇關(guān)于python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的文章就介紹到這了,更多相關(guān)python 直傳簽名與回調(diào)驗證內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python生成個性簽名圖片獲取GUI過程解析
  • PYTHON實現(xiàn)SIGN簽名的過程解析
  • python rsa實現(xiàn)數(shù)據(jù)加密和解密、簽名加密和驗簽功能
  • 對python函數(shù)簽名的方法詳解
  • python3個性簽名設(shè)計實現(xiàn)代碼
  • python3爬蟲之設(shè)計簽名小程序
  • Python GUI Tkinter簡單實現(xiàn)個性簽名設(shè)計

標(biāo)簽:白城 安慶 隨州 錦州 天水 日照 西安 股票

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法》,本文關(guān)鍵詞  python,阿里,云,oss,實現(xiàn),直傳,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    日韩免费在线观看视频| 欧美大片一区| 国产一区二区精品在线观看| 久久福利影视| 日韩中文字幕在线亚洲一区| 欧美1区| 久久精品店| 日韩免费在线观看视频| 色综合久久久久综合体桃花网| 国产麻豆精品hdvideoss| 久久精品欧美一区二区| 亚欧视频在线| 亚洲 激情| 日韩免费片| 国产一区二区精品| 精品视频免费观看| 国产视频网站在线观看| 亚洲第一页乱| 免费的黄色小视频| 亚欧成人毛片一区二区三区四区| 日韩欧美一二三区| 欧美激情一区二区三区中文字幕| 久草免费在线视频| 精品久久久久久免费影院| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 精品视频一区二区三区| 日本特黄特色aaa大片免费| 二级特黄绝大片免费视频大片| 成人影视在线播放| 久久久久久久免费视频| 午夜激情视频在线观看| 香蕉视频三级| 国产成人啪精品视频免费软件| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 日韩免费在线观看视频| 二级片在线观看| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 久久国产精品自由自在| 久久精品店| 欧美激情中文字幕一区二区| 日本特黄一级| 国产高清在线精品一区a| 一本伊大人香蕉高清在线观看| 国产伦理精品| 午夜在线影院| a级精品九九九大片免费看| 成人av在线播放| 国产91精品一区| 亚洲天堂在线播放| 91麻豆高清国产在线播放| 91麻豆精品国产自产在线观看一区| 香蕉视频一级| 亚洲女人国产香蕉久久精品| 中文字幕Aⅴ资源网| 九九精品在线播放| 可以在线看黄的网站| 久久福利影视| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产视频网站在线观看| 欧美激情一区二区三区视频| 成人a大片在线观看| 黄视频网站在线免费观看| 999精品在线| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 日韩免费在线观看视频| 精品国产一区二区三区久| 尤物视频网站在线| 黄色免费三级| 91麻豆精品国产高清在线| 精品视频在线观看免费| 欧美日本二区| 日本乱中文字幕系列| 成人影视在线播放| 九九久久国产精品| 精品国产一区二区三区国产馆| 国产高清在线精品一区二区| 久久久久久久免费视频| 麻豆系列 在线视频| 久久国产精品自线拍免费| 亚洲 激情| 国产91精品系列在线观看| 麻豆网站在线免费观看| 欧美激情一区二区三区视频| 国产极品精频在线观看| 久久久久久久网| a级黄色毛片免费播放视频| 国产成人精品一区二区视频| 精品国产亚洲一区二区三区| 亚洲精品中文字幕久久久久久| 青青久在线视频| 沈樵在线观看福利| 国产一区二区精品尤物| 日韩专区第一页| 国产一区二区精品尤物| 国产网站麻豆精品视频| 在线观看成人网 | 欧美电影免费看大全| 国产亚洲男人的天堂在线观看| 精品视频在线看| 亚洲 男人 天堂| 国产成人精品一区二区视频| 午夜在线亚洲| 成人a大片在线观看| 国产福利免费观看| 国产一区二区精品| 亚洲女人国产香蕉久久精品 | 成人免费网站视频ww| 成人影院一区二区三区| 尤物视频网站在线| 午夜欧美福利| 午夜激情视频在线播放| 午夜激情视频在线观看| 午夜激情视频在线播放| 四虎影视久久| 精品国产一区二区三区久| 毛片成人永久免费视频| 国产一级强片在线观看| 日韩在线观看免费完整版视频| 成人免费观看的视频黄页| 国产韩国精品一区二区三区| 精品国产亚洲一区二区三区| 精品国产香蕉在线播出| 国产成人啪精品| 国产91精品一区| 精品毛片视频| 九九免费精品视频| 日韩av片免费播放| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 深夜做爰性大片中文| 久草免费在线色站| 国产成+人+综合+亚洲不卡| 二级特黄绝大片免费视频大片| 久久久久久久久综合影视网| 韩国毛片基地| 精品美女| 日本在线不卡免费视频一区| 国产精品1024永久免费视频| 国产亚洲免费观看| 尤物视频网站在线| 国产麻豆精品视频| 久久99中文字幕| 成人免费观看视频| 成人a大片高清在线观看| 欧美一区二区三区在线观看| 国产视频一区二区三区四区| 成人影院久久久久久影院| 欧美a级成人淫片免费看| 精品久久久久久综合网| 欧美激情一区二区三区中文字幕| 精品国产香蕉在线播出| 毛片高清| 欧美a级片视频| 国产视频久久久| 精品国产三级a∨在线观看| 欧美激情一区二区三区在线播放| 午夜家庭影院| 九九精品久久| 国产成a人片在线观看视频| 久久精品免视看国产明星| 国产精品免费久久| 国产伦久视频免费观看视频| 黄色免费网站在线| 九九干| 国产麻豆精品hdvideoss| 日本在线www| 久久99中文字幕| 国产麻豆精品hdvideoss| 欧美激情一区二区三区在线| 一级毛片看真人在线视频| 国产精品123| 国产激情视频在线观看| 你懂的日韩| 国产福利免费观看| 成人免费观看网欧美片| 国产a视频| 久草免费资源| 国产a网| 欧美一区二区三区性| 天天做日日爱夜夜爽| 99久久精品国产国产毛片| 日韩在线观看免费| 可以在线看黄的网站| 韩国三级一区| 亚欧成人毛片一区二区三区四区| 亚欧成人毛片一区二区三区四区| 国产美女在线一区二区三区| 一级女性大黄生活片免费| 午夜欧美成人久久久久久| 国产一级生活片| 日韩欧美一及在线播放| 日韩免费片| 日韩一级黄色| 亚洲女人国产香蕉久久精品 | 亚州视频一区二区| 日韩一级黄色片| 可以免费看污视频的网站| 精品久久久久久综合网 | 久久国产影视免费精品| 国产精品123| 美女免费黄网站|