百度云bos 存储 base64形式上传成功后,下载的图片 里面还是原base64 内容 本地无法查看 也无法在网站展示
百度云bos 存储 base64形式上传成功后,下载下来的图片 里面还是原base64 内容 本地无法查看 也无法在网站展示,img和video采用base64格式能用
文件开头是data:image/jpeg;base64,/9j/4RlRRXhpZgAATU
但把开头去掉也不正常
补充问题 百度云采用 百度自己的客户端api 上传内容到 百度云
client.putObject(BUCKET, newName, file, options)
其中file为base64格式(接口会有验证,会验证是字符串还是base64)我采用了base64 正常上传以后 查listbucket也能查到在bos里图片,但直接通过url 下载
https://su.bcebos.com/v1/dev-...
图片 无法正常查看(因为内部编码是base64的)
请求头里的content-type用的也是图片的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这是转换以后的流文件,直接用链接是拿不到文件的。你要在后端拿到流文件后回传到前端,才能识别为文件,具体操作可以查文档。我用的阿里云,API 里就有一个 getStream 方法,百度云应该也类似。image 通过链接能直接显示图片,是因为内部已经封装好了转换逻辑。
完全不知道你想问啥,描述清楚点啊
请求头里的contentType是告诉服务器怎样解析你的请求主体的,其实你传base64的话,主体其实是个字符串,contentType可不设定(一般即json)。
如果是使用formData上传文件,则设定为multipart/form-data即可。
你这个地址是怎么得到的,访问不到图片?
具体的建议查看百度云的开发文档,我没用过,猜不到。
不过在做
atob
(ascii 转二进制)的时候,data:image/jpeg;base64,
这一截需要去掉。