84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
根据下载私有文件的指南生成私有文件链接,发现文件名是中文的话生成的private_url用chrome会出现
{"error":"download token auth failed"}
的响应(对比英文文件名是正常的)。
认证高级PHP讲师
七牛要求所有的链接,文件名必须都是UTF-8编码的,所以看看你的代码吧。
Key必须采用utf-8编码,使用非utf-8编码的资源名访问时会报错。
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html
你在做中文的key的下载凭证的时候,key要做url转义的,参考上面的文档的最后面的说明。
你够幸运,我遇到过,告诉你吧
chrome 尤其是mac系统上的(可能跟系统没啥关系,跟浏览器种类也没关系,反正有的电脑就是这样)
你是用utf-8编码后的url 单击链接后,浏览器会再转一次,有的时候是全部转成大写,有的是全部小写,
例如原url=xxx.com/downfile/fileidHHHHHaaaaa.rar?e=&token=****** 会被自动转码成url=xxx.com/downfile/fileidHHHHHAAAAA.rar?e=&token=********
注意小写aaaaa变成了大写AAAAA,也可能是原来大写变成小写的
这只是举例子,实际情况是对utf-8编码后的中文部分进行转码
自动转码可能说的不准确,但是不管看html里面<a href="***aaa" aaa写的是什么,点击打开就会发现浏览器打开的地址变成AAA了
<a href="***aaa"
因为这个问题发现的时间比较久了,所以记得不是很清楚,反正基本就是这样,确认你文件名不包括中文,就不会发生此问题
除了楼上的答案其实还有其他可能性,之所以点进了这个贴是因为我遇到了跟楼主一样的问题,但我查看了一下我的文件并没有中文,反而,有一个空格,我把空格去掉后,就没事了,在此留言,让后辈少进坑把
我没有中文,,没有空格为什么也提示这种问题
七牛要求所有的链接,文件名必须都是UTF-8编码的,所以看看你的代码吧。
http://developer.qiniu.com/docs/v6/api/reference/security/download-token.html
你在做中文的key的下载凭证的时候,key要做url转义的,参考上面的文档的最后面的说明。
你够幸运,我遇到过,告诉你吧
chrome 尤其是mac系统上的(可能跟系统没啥关系,跟浏览器种类也没关系,反正有的电脑就是这样)
你是用utf-8编码后的url 单击链接后,浏览器会再转一次,有的时候是全部转成大写,有的是全部小写,
例如原url=xxx.com/downfile/fileidHHHHHaaaaa.rar?e=&token=******
会被自动转码成url=xxx.com/downfile/fileidHHHHHAAAAA.rar?e=&token=********
注意小写aaaaa变成了大写AAAAA,也可能是原来大写变成小写的
这只是举例子,实际情况是对utf-8编码后的中文部分进行转码
自动转码可能说的不准确,但是不管看html里面
<a href="***aaa"
aaa写的是什么,点击打开就会发现浏览器打开的地址变成AAA了因为这个问题发现的时间比较久了,所以记得不是很清楚,反正基本就是这样,确认你文件名不包括中文,就不会发生此问题
除了楼上的答案其实还有其他可能性,之所以点进了这个贴是因为我遇到了跟楼主一样的问题,但我查看了一下我的文件并没有中文,反而,有一个空格,我把空格去掉后,就没事了,在此留言,让后辈少进坑把
我没有中文,,没有空格为什么也提示这种问题