文件上传为类型:Google 云存储中的文件夹

Files get uploaded as Type: Folder in Google cloud storage

我将 .jpg 文件上传到 GCS 已经有一段时间了,在过去的 5 个月里我没有更改执行此操作的代码。 大约一个月前,我开始意识到我上传的一些图像文件开始被列为 Type:Folder 而不是以前的类型:image/jpeg。

GCS 的 UI 大约一个月前发生了变化,我感觉后台也发生了一些变化,它要么是 Google 错误(不太可能),要么我一直都在一直在以错误的方式上传图片(可能有一些错误的元数据或阻止 GCS 将它们识别为 image/jpeg 的东西)并且它只是赶上了我 Google 更新了一些东西。

在我开始深入研究我对元数据的推测之前,我想在这里问一下是否还有其他人遇到过同样的问题。如果是,解决方法是什么?

总结:代码没有变化,大约一个月前,GCS web UI 开始将我的 "image/jpeg" 列为 "Folder"。是否有人知道 Google 方面的变化可能会导致这种情况发生?

我解决了这个问题。 在将文件发送到服务器之前我有这段代码;

String contentType = URLConnection.guessContentTypeFromStream(stream);

无法识别它是 image/jpeg,因为图片的元数据在我之前进行的所有图像处理过程中都被破坏了。

现在,我对其进行了硬编码,它的工作方式如下

String contentType = "image/jpeg";

解决方法:在将文件发送到服务器之前指定文件的contentType。