Pode usar o Cloud Storage para armazenar e publicar ficheiros, como filmes, imagens ou outro conteúdo estático.
Este documento descreve como usar as bibliotecas de cliente da nuvem para o Cloud Storage na sua app para armazenar e obter dados do Cloud Storage.
Antes de começar
- Siga as instruções em Configurar o ambiente de desenvolvimento para configurar o ambiente e o projeto, e para compreender como as apps estão estruturadas no App Engine. Anote e guarde o ID do projeto, porque vai precisar dele para executar a aplicação de exemplo descrita neste documento.
Certifique-se de que cria um contentor do Cloud Storage para a sua aplicação invocando o seguinte comando:
gcloud storage buckets create gs://YOUR_BUCKET_NAME
Torne o contentor publicamente legível para que possa publicar ficheiros:
gcloud storage buckets add-iam-policy-binding gs://<var>YOUR_BUCKET_NAME</var> --member=allUsers --role=roles/storage.objectViewer
Transfira o exemplo
Go
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
cd golang-samples/appengine_flexible/storage
Java
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/flexible/java-17/cloudstorage
Node.js
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples/
cd nodejs-docs-samples/appengine/storage/flexible
PHP
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/php-docs-samples
cd php-docs-samples/appengine/flexible/storage
Python
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/flexible/storage
Ruby
Para clonar o repositório:
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
cd ruby-docs-samples/appengine/flexible/storage/
.NET
Transfira a app de exemplo e extraia-a.
Se estiver a usar a linha de comandos, navegue para o seguinte diretório da app:
dotnet-docs-samples\appengine\flexible\CloudStorage\CloudStorage.Sample
Para executar a sua aplicação localmente, configure uma conta de serviço e transfira as credenciais:
Abra a lista de credenciais na Google Cloud consola.
Clique em Criar credenciais.
Selecione Chave da conta de serviço.
É apresentada uma janela Criar chave de conta de serviço.
Clique na lista Conta de serviço e selecione Conta de serviço predefinida do Compute Engine.
Selecione JSON para o Tipo de chave.
Clique em Criar.
É apresentada uma janela Nova chave privada e a chave privada para o é transferida automaticamente.
Clique em Fechar.
Edite a configuração do projeto e instale dependências
Go
Em app.yaml
, defina GCLOUD_STORAGE_BUCKET
. Este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Java
Em app.yaml
, defina o BUCKET_NAME
para o Cloud Storage que criou anteriormente para o seu projeto.
Em pom.xml
, defina com.google.cloud
como uma dependência e especifique google-cloud-storage
como o artifactID dessa dependência. Isto fornece as funções para usar o armazenamento na nuvem.
Node.js
Em app.yaml
, adicione o ID do projeto ao valor do ambiente GOOGLE_CLOUD_PROJECT
. Em seguida, defina o valor do ambiente GCLOUD_STORAGE_BUCKET
para o nome do contentor do Cloud Storage que criou anteriormente.
Em package.json
, adicione @google-cloud/storage
como uma dependência, que
fornece as funções para usar o Cloud Storage.
Consulte o README.md
ficheiro
para ver instruções sobre a execução e o teste localmente.
PHP
Em app.yaml
, defina CLOUD_STORAGE_BUCKET
; este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Em composer.json
, repare que tem de incluir a biblioteca do cliente do Google Cloud, porque esta fornece funções do Cloud Storage.
Python
Em app.yaml
, defina GOOGLE_STORAGE_BUCKET
; este valor é o nome do contentor do Cloud Storage que criou anteriormente.
Em requirements.txt
, repare que tem de incluir a biblioteca google-cloud-storage
, porque esta fornece funções do Cloud Storage.
Ruby
Em app.yaml
, defina o GCLOUD_STORAGE_BUCKET
para o Cloud Storage que criou anteriormente para o seu projeto.
Tenha em atenção que tem de incluir a biblioteca gcloud
em Gemfile
para usar as funções do Cloud Storage.
.NET
No ficheiro app.yaml
, defina o TEST_GOOGLE_BUCKET_NAME
para o Cloud Storage que criou anteriormente para o seu projeto.
env_variables:
TEST_GOOGLE_BUCKET_NAME: [your-bucket-name]
Código da aplicação
Go
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento escreve o ficheiro no contentor do Cloud Storage através da função NewWriter do Cloud Storage.
Tenha em atenção que, para obter este ficheiro do Cloud Storage, tem de especificar o nome do contentor e o nome do ficheiro. Deve armazenar estes valores na sua app para utilização futura.
Java
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro
a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de pedidos doPost
escreve o ficheiro no contentor do Cloud Storage através de Storage.create
Tenha em atenção que, para obter este ficheiro do Cloud Storage, tem de especificar o nome do contentor e o nome do ficheiro. Deve armazenar estes valores na sua app para utilização futura.
Node.js
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
PHP
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Python
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num blob do Cloud Storage e escreve-o no contentor do Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Ruby
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
.NET
A aplicação de exemplo apresenta uma página Web que pede ao utilizador para fornecer um ficheiro a ser armazenado no Cloud Storage. Quando o utilizador seleciona um ficheiro e clica em enviar, o controlador de carregamento carrega o conteúdo do ficheiro num objeto binário grande (blob) e escreve-o no Cloud Storage.
Tenha em atenção que, após o carregamento do ficheiro para o Cloud Storage, é devolvido o URL público deste ficheiro, que pode usar para apresentar o ficheiro diretamente a partir do Cloud Storage. Deve armazenar este valor na sua app para utilização futura.
Para obter mais informações
Para obter informações completas sobre o Cloud Storage, consulte a documentação do Cloud Storage.