Home  >  Q&A  >  body text

七牛Python的SDK中有判断回调请求合法性的接口吗?

服务端的回调

我根据七牛的官网的文档自己写了认证的算法,生成的签名和服务器回调的encode_data不一致,请问SDK中有生成签名的函数吗?下面是我的代码,使用的Django 框架(Python3.5):

from django.shortcuts import redner
from django.http.response import JsonResponse
from django.views.decorators.csrf import csrf_exempt
import hmac
import base64
from hashlib import sha1

@csrf_exempt
def qiniu(request):
    sk = "my secret key"
    auth_header = request.META['HTTP_AUTHORIZATION']
    request_body = request.body.decode()
    path = request.path_info
    
    encode_data = auth_header.split(":")[1]
    data = path + "\n" + request_body
    sign = hmac.new(sk.encode(), data.encode(), sha1).digest()
    base64_sign = base64.b64encode(sign)

这个有什么错误吗?如果SDK中有的话,我就造轮子了。。

高洛峰高洛峰2849 days ago453

reply all(1)I'll reply

  • 三叔

    三叔2016-10-26 16:04:39

    知道怎么做了,Auth里有verify_callback 方法。

    reply
    0
  • Cancelreply