我使用Angular将图像上传到s3存储桶,使用从我的Laravel服务器收到的预签名网址。
该文件似乎可以使用正确的内容类型上传。如果我在Angular上传PUT
到s3之后点击s3文件,我会得到:
Object: dog-aromatherapy.jpg
Bucket: dderesources
Name: dog-aromatherapy.jpg
Link: This is a public link -> https://s3.amazonaws.com/dde.resources/dog-aromatherapy.jpg
Size: 28660
Last Modified: Tue Jun 14 14:51:13 GMT-400 2016
Owner: myusername
ETag: f478788943af2296223a0f45a9c50610
Expiry Date: None
Expiration Rule: N/A
元数据正确为image/jpeg
:
但实际文件大小为27.9kb
,这意味着headers
的{{1}}大小预计会超出约700亿左右...
当我点击要查看的图像时,它会显示一个白色的迷你:
亲自尝试:https://s3.amazonaws.com/dderesources/dog-aromatherapy.jpg
角色上传代码:
28.6kb
为什么会这样?
答案 0 :(得分:1)
删除期间“。”从你的桶名称,并使它像这样将解决问题
DDE-资源
作为具有句点“。”的存储桶名称。在您的代码中使用重新签名的URL时效果不佳。
在角度代码中使用以下语句
processData: false