Executar exemplos de código

O APIs Explorer do Google gera dinamicamente exemplos de código. Esses exemplos de código foram projetados para serem copiados e executados localmente. Para conferir os exemplos, clique em em tela cheia no painel lateral do APIs Explorer. A figura abaixo mostra o API Explorer em tela cheia expandido:

Painel em tela cheia do APIs Explorer para a API Google Books
Figura 2: painel em tela cheia do APIs Explorer para a API Google Books.

Por padrão, o APIs Explorer mostra como usar o cURL para executar sua solicitação. Algumas APIs também podem mostrar exemplos para outras linguagens, como JavaScript, Java e Python.

Executar exemplos de código localmente

As guias a seguir explicam os pré-requisitos e as etapas para executar exemplos de código. Para executar os exemplos de código, você precisa gerar e usar suas próprias credenciais de autorização. Para saber como criar um projeto e gerar credenciais, consulte a documentação específica da API do Google.

As credenciais são uma das seguintes, dependendo do tipo de dados (público ou privado) que o método está acessando:

  • Para dados públicos, a credencial é uma chave de API.
  • Para dados privados, a credencial é um arquivo client_secret.json que contém o ID e a chave secreta do cliente OAuth 2.0 ou um token de acesso OAuth 2.0.

cURL

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. No console do Cloud, crie uma chave de API.
  3. No console do Cloud, crie uma credencial de ID do cliente OAuth para um aplicativo da Web e use https://developers.google.com/oauthplayground como o URI de redirecionamento.
  4. No OAuth 2.0 Playground, clique em Configuração OAuth 2.0 .
  5. Marque a opção Usar suas próprias credenciais.
  6. Insira o ID e a chave secreta do cliente gerados na etapa 3.
  7. No campo "Escopos", digite o escopo a ser usado com o método e clique em Autorizar APIs.
  8. (Opcional) Se uma tela de login aparecer, selecione a conta que você quer usar.
  9. (opcional) Se uma tela de autorização aparecer, clique em Aceitar.
  10. Clique em Trocar código de autorização dos tokens. Um token é retornado.
  11. No exemplo de código cURL, substitua [YOUR_API_KEY] pela chave de API gerada na etapa 2: 'https://www.googleapis.com/drive/v3/files?key=[YOUR_API_KEY]' \
  12. No exemplo de código cURL, substitua [YOUR_ACCESS_TOKEN] pelo token de acesso gerado na etapa 10: --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \

Exemplo de execução de código

Na linha de comando, execute o comando cURL. O comando deve ser semelhante a este:

curl \
'https://www.googleapis.com/drive/v3/files?key=AIzaSyBiKcaoXmVApwnT24hitQG_dwjGvAj6Ddw' \
--header 'Authorization: Bearer ya29.a0ARrdaM_yQn9MWBpJgKPx880BSnRYIizRYIDz0JN9e66nSliIYpqNXmPsvv2ccfplCTG_U4b1' \
--header 'Accept: application/json' \
--compressed

JavaScript

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. No console do Cloud, crie uma chave de API.
  3. No console do Cloud, crie uma credencial de ID do cliente OAuth para um "aplicativo da Web" e defina as origens JavaScript autorizadas para identificar o URL de onde você vai enviar solicitações, como http://localhost.
  4. Copie o exemplo de código completo para um arquivo local acessível ao servidor da Web, como /var/www/html/example.html.
  5. Encontre a linha no exemplo de código que define a chave de API ou o ID do cliente e substitua o valor pelos valores gerados nas etapas 2 e 3:

    • Chave de API: gapi.client.setApiKey(YOUR_API_KEY);
    • ID do cliente OAuth 2.0: gapi.client.init({ 'clientId': 'YOUR_CLIENT_ID',

Exemplo de execução de código

  1. Abra o arquivo no navegador, como http://localhost/example.html. Recomendamos usar um navegador com um console de depuração, como o Google Chrome.
  2. (Opcional) Se uma tela de login aparecer, selecione a conta que você quer usar.
  3. (opcional) Se uma tela de autorização aparecer, clique em Aceitar. O console de depuração vai mostrar a resposta do método como um objeto JSON.

Java

Pré-requisitos

  • Java 1.7 ou mais recente.
  • Gradle 7 ou mais recente.

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. Dependendo do tipo de dados que o método está acessando, crie uma chave de API (dados públicos) ou um ID do cliente OAuth 2.0 (dados privados).
  3. Defina o tipo de aplicativo como App para computador.
  4. Se você criou um ID do cliente OAuth 2.0, faça o download do arquivo JSON que contém suas credenciais OAuth 2.0. Esse arquivo tem um nome semelhante a client_secret_CLIENTID.json, em que CLIENTID é o ID do cliente do projeto.
  5. No diretório de trabalho, execute os comandos abaixo para criar uma nova estrutura de projeto:

    $ gradle init --type basic
    $ mkdir -p src/main/java src/main/resources
    
  6. Se você criou um ID do cliente OAuth 2.0 na etapa 2, renomeie o arquivo JSON que você fez o download para client_secret.json.

  7. Salve o arquivo renomeado no diretório src/main/resources que você criou na etapa 5.

  8. No diretório de trabalho, abra o arquivo build.gradle e substitua o conteúdo por este:

    apply plugin: 'java'
    apply plugin: 'application'
    
    mainClassName = 'ApiExample'
    sourceCompatibility = 1.7
    targetCompatibility = 1.7
    version = '1.0'
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        compile 'com.google.api-client:google-api-client:1.23.0'
        compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0'
        API_SPECIFIC_DEPENDENCY
    }
    
  9. No arquivo build.gradle, substitua a linha que diz API_SPECIFIC_DEPENDENCY por uma instrução para compilar o código da API que você está chamando. Confira um exemplo da API YouTube Analytics:

    compile 'com.google.apis:google-api-services-youtubeAnalytics:v2-rev16-1.23.0'
    

    A instrução segue este modelo:

    compile 'com.google.apis:google-api-services-API_NAME:API_VERSION-   revREVISION-CL_VERSION'
    

Em que:

  • API_NAME é o nome da API listado no GitHub. Para encontrar o nome, clique no link da versão ao lado da API na página APIs do Google com suporte. O link da versão navega para o GitHub. O nome da API está na parte de cima da página e é precedido por googleapis/google-apis-services-. Por exemplo, para a v3 da API Drive, o API_NAME é drive.
  • API_VERSION é a versão da API listada abaixo do nome da API na página "APIs do Google com suporte".
  • REVISION é o número da revisão listado na referência do JavaDoc para a API. A referência do JavaDoc pode ser encontrada em https://googleapis.dev/java/google-api-services-API_NAME/latest/index.html
  • CL_VERSION é a versão da biblioteca de cliente. Esse valor também aparece na referência do JavaDoc.
  • No seu diretório de trabalho, copie o exemplo de código do APIs Explorer para src/main/java/ApiExample.java. O nome da classe em cada amostra é ApiExample, para que você não precise modificar o arquivo build.gradle para executar amostras diferentes.

Exemplo de execução de código

Use o seguinte comando para executar o exemplo:

  gradle -q run

O exemplo vai executar sua solicitação de API e imprimir a resposta para STDOUT. Também é possível verificar o serviço que você está chamando para conferir os efeitos das solicitações que gravam dados.

Node.js

Pré-requisitos

  • Node.js
  • A biblioteca de cliente das APIs do Google para Node.js:

    • Se você não tiver instalado a biblioteca de cliente, execute o comando:
    npm install googleapis --save
    
    • Se você já instalou a biblioteca de cliente, recomendamos atualizá-la para garantir que você tenha as classes mais atualizadas da biblioteca que está testando. Para atualizar a biblioteca de cliente, execute o comando:
    npm update googleapis --save
    

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. Dependendo do tipo de dados que o método está acessando, crie uma chave de API (dados públicos) ou um ID do cliente OAuth 2.0 (dados privados).
  3. Defina o tipo de aplicativo como App para computador.
  4. Se você criou um ID do cliente OAuth 2.0, faça o download do arquivo JSON que contém suas credenciais OAuth 2.0. Esse arquivo tem um nome semelhante a client_secret_CLIENTID.json, em que CLIENTID é o ID do cliente do projeto.
  5. Copie o exemplo de código para um arquivo local e modifique-o para identificar corretamente a chave de API ou o arquivo de chaves secretas do cliente. No exemplo, o valor da chave de API é YOUR_API_KEY, e o local do arquivo de chaves secretas do cliente é YOUR_CLIENT_SECRET_FILE.json.

Exemplo de execução de código

Use o seguinte comando para executar o exemplo:

  node sample.js

A maioria dos exemplos imprime uma resposta da API (ou outra coisa) para STDOUT.

PHP

Pré-requisitos

  • PHP 5.4 ou mais recente com a interface de linha de comando (CLI) e a extensão JSON.
  • A ferramenta de gerenciamento de dependências do Composer instalada globalmente.
  • A Biblioteca de cliente de APIs do Google para PHP:

    • Se você não tiver instalado a biblioteca de cliente, execute o comando:

      composer require google/apiclient:^2.0
      
    • Se você já instalou a biblioteca de cliente, recomendamos atualizá-la para garantir que você tenha as classes mais atualizadas da biblioteca que está testando. Para atualizar a biblioteca de cliente, execute o comando:

      composer update google/apiclient --with-dependencies
      

Exemplo de execução de código

Use o seguinte comando para executar o exemplo:

  php sample.php

A maioria dos exemplos imprime uma resposta da API (ou outra coisa) para STDOUT.

Python

Pré-requisitos

  • Python 2.7 ou Python 3.5 ou mais recente
  • Ferramenta de gerenciamento de pacotes pip
  • A biblioteca de cliente das APIs do Google para Python:

    pip install --upgrade google-api-python-client
    
  • As bibliotecas google-auth-oauthlib e google-auth-httplib2 para autorização do usuário:

    pip install --upgrade google-auth-oauthlib google-auth-httplib2
    

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. Dependendo do tipo de dados que o método está acessando, crie uma chave de API (dados públicos) ou um ID do cliente OAuth 2.0 (dados privados).
  3. Defina o tipo de aplicativo como App para computador.
  4. Se você criou um ID do cliente OAuth 2.0, faça o download do arquivo JSON que contém suas credenciais OAuth 2.0. Esse arquivo tem um nome semelhante a client_secret_CLIENTID.json, em que CLIENTID é o ID do cliente do projeto.
  5. Copie o exemplo de código para um arquivo local e modifique-o para identificar corretamente a chave de API ou o arquivo de chaves secretas do cliente. No exemplo, o valor da chave de API é YOUR_API_KEY, e o local do arquivo de chaves secretas do cliente é YOUR_CLIENT_SECRET_FILE.json.

Exemplo de execução de código

Use o seguinte comando para executar o exemplo:

  python sample.py

A maioria dos exemplos imprime uma resposta da API (ou outra coisa) para STDOUT.

Ruby

Pré-requisitos

  • Ruby 2.0 ou mais recente
  • A biblioteca de cliente de APIs do Google para Ruby:

    gem install google-api-client`
    

Configurar

  1. Siga as instruções na documentação da API para criar ou selecionar um projeto para o app e ativar a API.
  2. Dependendo do tipo de dados que o método está acessando, crie uma chave de API (dados públicos) ou um ID do cliente OAuth 2.0 (dados privados).
  3. Defina o tipo de aplicativo como App para computador.
  4. Se você criou um ID do cliente OAuth 2.0, faça o download do arquivo JSON que contém suas credenciais OAuth 2.0. Esse arquivo tem um nome semelhante a client_secret_CLIENTID.json, em que CLIENTID é o ID do cliente do projeto.
  5. Copie o exemplo de código para um arquivo local e modifique-o para identificar corretamente a chave de API ou o arquivo de chaves secretas do cliente. No exemplo, o valor da chave de API é YOUR_API_KEY, e o local do arquivo de chaves secretas do cliente é YOUR_CLIENT_SECRET_FILE.json.

Exemplo de execução de código

Use o seguinte comando para executar o exemplo:

  ruby sample.rb

A maioria dos exemplos imprime uma resposta da API (ou outra coisa) para STDOUT.

Resolver problemas

A caixa de diálogo de autorização não aparece

O APIs Explorer usa um pop-up para conceder acesso aos seus dados particulares. Se o navegador bloquear pop-ups, ele não vai aparecer e você não vai poder conceder acesso.

Se você clicar em "Permitir" na tela de autorização e nada acontecer, tente mudar as configurações de pop-up do navegador para ativar os pop-ups.

Recebeu um erro 401 ou 403

Se você receber um erro 401 ou 403 ao testar uma amostra, provavelmente é devido a um problema com uma das seguintes situações:

  • A API não está ativada para o projeto. Revise as instruções da API sobre como criar um projeto e ativar uma API.
  • Você está usando o tipo de autorização errado (chave de API em vez de OAuth 2.0).
  • Você está usando o OAuth 2.0, mas com um escopo muito estreito.
  • Ao configurar a chave de API, você define restrições para evitar o uso não autorizado das credenciais. No entanto, a solicitação não atende a essas restrições. Para mais informações, consulte Como usar restrições de chave de API.

Recebeu um aviso sobre conteúdo misto

Se você usar o Cloud Endpoints do Google e executar o endpoint em um servidor de desenvolvimento, o navegador poderá emitir um aviso sobre conteúdo misto. Esse aviso ocorre porque o APIs Explorer é carregado por HTTPS, mas quando a API é executada localmente, ela é hospedada no HTTP.

Para ocultar esse aviso usando o Chrome, inicie uma sessão com flags especiais da seguinte maneira:

path/to/chrome --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:port

Exemplo:

/usr/bin/google-chrome-stable --user-data-dir=test --unsafely-treat-insecure-origin-as-secure=http://localhost:8080

Ocultar esse aviso apenas para fins de teste local.

Somente JavaScript: gapi não está definido

Um erro "gapi not defined" ocorre quando o código JavaScript tenta chamar a biblioteca de cliente da API Google para JavaScript antes do carregamento da biblioteca. Confira se o código que faz referência à variável gapi não é chamado até que a biblioteca de cliente seja carregada.