【发布时间】:2014-03-05 12:19:09
【问题描述】:
在我的本地 google 应用引擎服务器 (1.9.0) (PHP 5.4.6-1ubuntu1.7) 上,我总是将 message/external-body 作为上传文件的 mime 类型,而 tmp_name 没有 gs:// 包装器正如它应该的那样。例如:
[type] => message/external-body [tmp_name] => /tmp/phpFbTDzF
它应该在哪里(如在生产应用程序引擎上):
[type] => text/plain [tmp_name] => gs://coscms-bucket/L2FwcGhvc3Rpbmcy...
文件是在本地上传的,但是当您没有获得正确的文件名 (gs://) 时,很难对其进行测试。
部署后,我获得了上传文件的正确 mime 类型。这是我的测试脚本:
<?php
use google\appengine\api\cloud_storage\CloudStorageTools;
$bucket = 'coscms-bucket';
if (!empty($_FILES)) {
print_r($_FILES);
}
$options = [ 'gs_bucket_name' => $bucket ];
$upload_url = CloudStorageTools::createUploadUrl('/test.php', $options);
?>
<form action="<?php echo $upload_url?>" enctype="multipart/form-data" method="post" accept-charset="utf-8">
Files to upload: <br>
<input type="file" name="uploaded_files" size="40">
<input type="submit" value="Send">
</form>
【问题讨论】:
标签: php google-app-engine