七牛音频转码,既然上传的回调转码的回调是分开的,服务器如何处理这条记录呢?

新手上路,请多包涵

App上传一段音频,然后进行转码,发现上传成功后需要过一段时间才能正常播放音频。
看到这个问题:七牛转码后通知,怎么不是转完后通知后才明白自己服务器接收到的只是上传成功,而非回调成功。

那么问题来了:

  1. 上传和转码的回调分开的话,服务器如何存储这条记录呢?

    1. 上传的回调正在进行数据库插入操作(finish字段设置为0),此时转码的回调到了,需要更新这个finish字段,可是数据库操作还在进行,如何协调呢?

    2. 或者只有当转码回调后才进行数据库操作,可是在callbackBody中自定义的一些参数怎么传递到persistentNotifyUrl中呢?

  2. 何时通知用户上传成功何时呢?

    1. 如果在上传回调中通知,此时用户立即刷新,转码仍在进行,会造成音视频无法点击的情况。

    望各位大侠不吝赐教。

谢谢!

阅读 3.3k
2 个回答

persistent是有persistentId的,你应当在上传成功的回调中获得persistentId,并记录下来,下次persistentNotifyUrl来的时候,根据persistentId匹配

新手上路,请多包涵

数据结构可以设计转码状态,转码地址,不用去覆盖原视频地址,persistentId也是需要记录的,还有很重要的一点,同文件名上传后,如果七牛发现已有转码文件,是不会再去回调通知的,利用好persistentId能查询到

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进