七牛云 使用python sdk 上传图片提示{"error":"key
发布时间:2020-12-17 17:02:00 所属栏目:Python 来源:网络整理
导读:经过各种百度查询结果如下: ? ? ? ? key doesn't match with scope 报错大部分原因是由于您在上传token中指定的key 与上传方法中设置的不一致导致的 第一种解决办法: ? ? ? ?1.使用python sdk获取token值时,需要填写key值,该值是保存到七牛后的文件名 #?-*
经过各种百度查询结果如下: ? ? ? ? key doesn't match with scope 报错大部分原因是由于您在上传token中指定的key 与上传方法中设置的不一致导致的 第一种解决办法: ? ? ? ?1.使用python sdk获取token值时,需要填写key值,该值是保存到七牛后的文件名 #?-*-?coding:?utf-8?-*- #?flake8:?noqa from?qiniu?import?Auth #?需要填写你的?Access?Key?和?Secret?Key access_key?=?'' secret_key?=?'' #?构建鉴权对象 q?=?Auth(access_key,?secret_key) #?要上传的空间 bucket_name?=?'chenxm' #?上传到七牛后保存的文件名 key?=?'11112.jpg' #?生成上传?Token,可以指定过期时间等 #?上传策略示例 #?https://developer.qiniu.com/kodo/manual/1206/put-policy policy?=?{ ????'callbackUrl':'',????'callbackBody':'',????'persistentOps':'',} #?3600为token过期时间,秒为单位。3600等于一小时 token?=?q.upload_token(bucket_name,?key,?3600,?policy) print(token) 2. 在上传的form表单中,填写key值和token,就可以上传成功 <!DOCTYPE?html> <html> <head> ????<meta?charset="UTF-8"> ????<title>Title</title> </head> <body> <form?method="post"?action="http://upload.qiniu.com/" ?enctype="multipart/form-data"> ????<input?name="key"?type="hidden"?value="11112.jpg"> ????<input?name="token"?type="hidden"?value="i_GvJMTram7mR0BJKR3rxueh8kGT90wRstg0YVaQ:I0b48vEmdCgLrQsw3TxEg88MZRw=:eyJzY29wZSI6ImNoZW54bToxMTExMi5qcGciLCJjYWxsYmFja1VybCI6IiIsImRlYWRsaW5lIjoxNTA0NjAyOTAyLCJwZXJzaXN0ZW50T3BzIjoiIiwiY2FsbGJhY2tCb2R5IjoiIn0="> ????<input?name="file"?type="file"/> ????<input?name="accept"?type="hidden"/> ????<button>提交</button> </form> </body> </html> ? ?3. 程果结果如下: {"hash":"FtRXiT5UWdCKMsUoOfowBRLL9ctz","key":"22222.jpg"} 第二种解决方法: key 如果不想要输入值,也就是不想要重新命名保存到七牛的文件名时,upload_token中传入key应该写成 key=None,这样就解决了上传文件报错提示key doesn't match with scope。 因为{'scope':'七牛存储空间名字:""'},如果七牛存储空间名字后面带一个冒号,代表指定了一上传的key,而这个key的值为"",就是一个空字符串,所以上传才会错误。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |