AppEngine을 사용하여 버킷을 만드는 방법이 있습니까?App Engine을 사용하여 클라우드 저장소 버킷 만들기
파일을 쓰고 읽는 데 use google\appengine\api\cloud_storage\CloudStorageTools;
을 사용했지만 버킷을 만드는 방법을 파악하지 못했습니다.
EDIT 코드 대신 수동으로 버킷을 생성하고 싶습니다.
AppEngine을 사용하여 버킷을 만드는 방법이 있습니까?App Engine을 사용하여 클라우드 저장소 버킷 만들기
파일을 쓰고 읽는 데 use google\appengine\api\cloud_storage\CloudStorageTools;
을 사용했지만 버킷을 만드는 방법을 파악하지 못했습니다.
EDIT 코드 대신 수동으로 버킷을 생성하고 싶습니다.
Google Cloud Storage 버킷을 만드는 방법에는 두 가지가 있습니다.
1) 새 관리 콘솔 - console.developers.google.com에서 생성 한 다음 '저장 용량', '클라우드 저장소'를 클릭하십시오. 결제 기능을 사용하도록 설정 한 경우 버킷을 추가하는 옵션이 표시됩니다.
2) 기본 버킷을 사용하십시오. appengine.google.com으로 이동하여 '애플리케이션 설정'을 클릭하면 'Google Cloud Storage Bucket'이 표시됩니다. 그렇지 않은 경우 하단으로 스크롤하여 '클라우드 통합'아래의 '만들기'를 클릭하십시오.
자세한 내용은이 문서를 참조하십시오 - https://cloud.google.com/appengine/docs/python/googlecloudstorageclient/activate
=== --- === 적절한 API 호출을 구성하는 방법에 PHP의 참고로
:
https://github.com/google/google-api-php-client/blob/master/src/Google/Service/Storage.php
을 전화하려는 API는 다음과 같습니다.
https://cloud.google.com/storage/docs/json_api/v1/buckets/insert
기본적으로 코드에서 고유 한 버킷 이름을 생성하려고합니다 (네임 스페이스가 모든 사용자에게 공통적이므로 간단한 버킷 이름이 모두 사용되므로). 어떤 사람들은 (appID-date-time)와 같이 버켓 이름에 현재 날짜/시간을 추가합니다.
버킷을 만들기 위해 버킷 삽입 API 호출을 만들고 개체 삽입 버킷에 개체를 넣으려는 개체 삽입 API 호출을 만들고 싶습니다. 그런 다음 객체를 가져 와서 수정하여 객체를 조작 할 수 있습니다.
프로그래밍 API를 사용하여 examples의 클라우드 저장소 설명서를 확인하고 인증에 대한 자세한 내용은 appengine docs을 확인하십시오.
먼저 프로젝트가 제대로 설정되어 있고 Store API가 following the instructions here에 포함되어 있는지 확인하십시오.
다음 코드는 프로젝트와 관련된 모든 버킷 양동이에 새로운 버킷을 만든 다음이 나열됩니다 :
require_once 'vendor/autoload.php';
$projectId = "example"; // your app engine id (example.appspot.com).
$client = new Google_Client();
$client->useApplicationDefaultCredentials(); // This won't work locally.
$client->addScope(Google_Service_Storage::DEVSTORAGE_FULL_CONTROL);
$storage = new Google_Service_Storage($client);
// Create our new bucket.
$newBucket = new Google_Service_Storage_Bucket();
$newBucket->setName("test-bucket1");
try {
$test = $storage->buckets->insert($projectId, $newBucket);
print_r($test);
} catch (\Google_Service_Exception $e) {
$error = $e->getErrors()[0];
// Available: reason & message.
die("Error message: ". $error["message"]);
}
// List all our buckets.
$buckets = $storage->buckets->listBuckets($projectId);
foreach ($buckets['items'] as $bucket) {
printf("%s<br>", $bucket->getName());
}
이 예는 로컬로 작동하지 않으며 구글의 서버에 배포해야 함을 유의하시기 바랍니다. 또한 버킷 이름은 전 세계적으로 고유해야하므로 버켓 이름에 임의의 숫자 또는 프로젝트 ID를 추가하십시오.
[PHP 용 Google API 클라이언트 라이브러리] (https://github.com/google/api-php-client) – jterrace
해당 라이브러리를 사용하여 데이터를 읽고 쓰는 방법을 알 수 없습니다. 그래서 나는 @jterrace를 이해할 수 있을지 의심 스럽지만 통찰력을 주셔서 감사합니다. – bryan