ios 上传录音到七牛 需要使用七牛云存储上传文件件还是数据 需要转换为mp3吗

有时候,坚持不懈并不是为了一定要得到什么,只是不想留下遗憾。——

在七牛默认的上传策略中,是不允许覆盖已有文件的,这是一种保护机制。但有时候我们确实需要覆盖原有的文件,这应该怎么办呢?下面就来说说如何上传文件时覆盖已有的文件。

要实现这一操作,必须在上传策略中进行配置,然后生成uptoken。比如,在PHP服务端中,我们有个生成uptoken的方法,这里我们以CI框架为例。在此之前,建议大家先看看我之前的一篇文章《》,因为载入七牛sdk需要修改一点东西。

    //配置七牛云存储,以下三个变量是必须设置的,这里做例子,所以没有写进去

这样默认生成的uptoken是默认上传新资源,而不允许覆盖原有的资源。如果要覆盖原有资源,那必须满足两个条件:

  1. 要保存的key必须和上面Scope设置的key严格一致

例如,原先七牛云存储上有一张名为sun.jpg的图片,我们希望上传新的图片区覆盖它,那就需要这样设置:

    //配置七牛云存储,以下三个变量是必须设置的,这里做例子,所以没有写进去

这样生成的uptoken被七牛服务端接收到之后,服务器就会将新上传的图片覆盖掉原有的sun.jpg。

具体的上传策略大家可以去官网看看,虽然七牛的文档写得很多,但也写得相对比较乱,需要多点耐心。

需要注意的,由于七牛存在缓存策略,所以被覆盖的文件不会马上被显示出来,有可能你虽然成功覆盖了原文件,但需要强制刷新浏览器几下,或者在七牛后台手动刷新缓存才能看到最新的文件。

所以我还是建议大家不要使用覆盖的方法去更新文件,最好是重新上传新文件,再将旧的删除,这样新上传的文件能马上读取到。

按照官方文档写的简易上传, 上传大一点的文件或是中文名文件就会失败,如何解决?

ios的SDK有上传函数可以直接调用,

如果你说的是让你的后台是指你的服务器上传的话,那你也可以让你后台服务器接入服务端的SDK:

我要回帖

更多关于 七牛云存储上传文件 的文章

 

随机推荐