功能还在开发中,不过先把心得体会,主要还有踩到的坑分享出来一点是一点。东西是很好的,服务也是很热心的,不过可能大概人手不够吧,有些文档似乎已经过时了,所以我是看着蝉游记的请求还有官方sdk的源代码才弄对的。
大致流程呢,就是通过你的app生成一个token,client拿这个token去上传,然后七牛会从这个token得到一些信息,然后再把这些信息交还给你的app。
大家看这个文档
http://docs.qiniu.com/api/put.html#upload-api里面写了要上传到up.qiniu.com,带上token和key,key就是文件名
但是我照着这个做死活不对,提示scope not specified之类的。
结果发现蝉游记也好,官方sdk的后端上传也好,里面用的都不是这个接口,
而是up.qiniu.com/upload参数是auth(值是token)和action(包含了以“/”分隔的键值对,值以base64加密,大概会是这个样子: /rs-put/VHJpcFBob3RvOjUzODYyLzEzNzM4MTMwMTI4ODlwMTd2ZXE1dWM4MXExbTY4czFsZjgxZmUzMWF1dTIuanBn/mimeType/aW1hZ2UvanBlZw==/rotate/0
)
sdk里的代码(至少python sdk是的)并没有把生成action的方法独立出来,因为文件传到后端,该取到的文件名啊mimetype你都能取到了,直接上传就好了。
不过大多数时候,都是客户端直接传七牛的服务器会更加有效率一点,就会用到swfuploader之类的,那就要自己在客户端把这段逻辑实现一下了。目前看七牛好像没提供这样的sdk,我慢点做成模块就来一发,大家也可以自己搞不是很麻烦的样子,base64算法什么的也有现成的
http://mshang.ca/base64-js/ 大概就是这样啦。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/75770
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.