我今天发现使用七牛上传策略,预转永久化的时候,采用callbackurl,但是发现竟然,速度非常快就被调用了我的这个回调通知的API,情况发现其实内容其实并没有转码成功,就直接通知了。以下是我部分我组装上传策略的代码:
q = qiniu.Auth(settings["QiniuAccessKey"], settings["QiniuSecretKey"])
key = "%s_%s.amr" % (save_id, name)
policy = {}
policy["persistentOps"] = "avthumb/m4a|saveas/"+base64.b64encode("audio:%s_%s" %(save_id, name))
policy["persistentPipeline"] = "weixin"
policy["callbackUrl"] = "http://XXX.XXX.com/api/audio/weixin_upload_notify"
policy["callbackBody"] = "filename=$(fname)&filesize=$(fsize)&user_id=%s&save_id=%s&name=%s&duration=%s&created=%s" % (user_id, save_id, name, duration, created)
uptoken = q.upload_token("audio", key, 3600, policy)
ret, info = yield qiniu.put_file(uptoken, key, localfile)
求官方的小伙伴能够帮忙看下否?
你这里的callbackUrl这个参数是针对上传操作来说的,上传成功后即可触发这个回调,通知业务服务器上传结果。
如果需要转码处理结果的通知,需要设定persistentNotifyUrl 这个参数,会在转码完成后回调处理结果。
参考文档:
http://developer.qiniu.com/article/developer/security/put-policy.html