无法使用Google PHP客户端将内容类型设置为Google存储空间

时间:2013-11-18 23:54:23

标签: php google-cloud-storage

我正在使用google-api-php-client

这是我上传.jpg图片的位置。

$postbody = array("data" => $imgData);
$gso = new Google_StorageObject();

$gso->setName($imageName);
$contentType = 'image/jpg';
$gso->setContentType($contentType);
$resp = $objects->insert('bucket-name', $gso, $postbody);

通过检查$gso正在添加ContentType,但在云控制台中添加了默认的application/octet-stream类型。

是否有另一种设置内容类型的方法?

2 个答案:

答案 0 :(得分:5)

试试这个,它对我有用:

$postbody = array('mimeType' => 'image/jpeg', "data" => $imgData);
$gso = new Google_StorageObject();

$gso->setName($imageName);
$resp = $objects->insert('bucket-name', $gso, $postbody);

似乎'mimeType'是一个参数。 请查看https://code.google.com/p/google-api-php-client/source/browse/tags/0.6.7/src/service/Google_ServiceResource.php

中的第39行

答案 1 :(得分:0)

这听起来像个错误。我建议用google-api-php-client进行归档。

同时,有一个解决方法。 Google云端存储会像处理任何其他元数据一样处理内容类型。您可以使用$objects->update()方法在上传对象后更改对象的内容类型。