У меня есть следующий код:
Я создаю URL-адрес для загрузки приложения, используя метод CloudStorageTools :: createUploadUrl () следующим образом:
require_once 'google/appengine/api/cloud_storage /CloudStorageTools.php'; use google\appengine\api\cloud_storage\CloudStorageTools; $options = [ 'gs_bucket_name' => 'myuserpics' ]; $upload_url = CloudStorageTools::createUploadUrl('/upload_handler.php', $options);
Я использую указанный выше URL как действие для формы, которую я использую для приема загрузок, следующим образом:
<form action="<?php echo $upload_url?>" enctype="multipart/form-data" method="post"> Files to upload: <br> <input type="file" name="uploaded_files" size="40"> <input type="submit" value="Send"> </form>
Ниже приведено содержимое upload_handler.php:
<?php var_dump($_FILES); ?>
Я начинаю загрузку на указанный выше URL в течение 10 минут после его создания и получаю следующий результат:
array(1) { ["userfile"]=> array(5) { ["name"]=> array(1) { [0]=> string(11) "fashion.jpg" } ["type"]=> array(1) { [0]=> string(10) "image/jpeg" } ["tmp_name"]=> array(1) { [0]=> string(200) "gs://myuserpics/***VERY LONG STRING***" } ["error"]=> array(1) { [0]=> int(0) } ["size"]=> array(1) { [0]=> int(59527) } } }
Разрешения, установленные для ведра «myuserpics», являются разрешениями по умолчанию.
Когда я смотрю в ведро, я не вижу загруженное изображение.
Из консоли Google Developers Console я могу загрузить изображение, а затем увидеть его в ведре. Однако, если изображение загружено из приложения, я не вижу его в ведре. Что я делаю не так?