Ficheiros e configuração necessários

O seu projeto tem de conter, no mínimo, os seguintes ficheiros:

Ficheiro e localização Descrição
/src/<your_api_class>.py O ficheiro de classe (ou ficheiros, se implementar a sua API em várias classes) que contém a API de back-end.
/src/<your_api_server>.py Ficheiro opcional que contém o código do servidor da API, se não o incluir na classe da API.
/src/app.yaml O descritor de implementação da app Web necessário para a configuração do App Engine.

O conteúdo de cada um destes ficheiros obrigatórios está documentado nas secções seguintes.

O ficheiro de classe da API

Os conteúdos obrigatórios e opcionais do ficheiro de classe (ou ficheiros, se usar uma API de várias classes) estão totalmente descritos no tópico Criar uma API Endpoints.

O ficheiro do servidor da API

Este ficheiro e o respetivo conteúdo são totalmente descritos em Criar um servidor Web.

app.yaml

Os conteúdos mínimos necessários para este ficheiro são os seguintes:

# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

runtime: python27
threadsafe: true
api_version: 1
basic_scaling:
  max_instances: 2

skip_files:
- ^(.*/)?#.*#$
- ^(.*/)?.*~$
- ^(.*/)?.*\.py[co]$
- ^(.*/)?.*/RCS/.*$
- ^(.*/)?\..*$
- ^(.*/)?setuptools/script \(dev\).tmpl$

handlers:
# The endpoints handler must be mapped to /_ah/api.
- url: /_ah/api/.*
  script: main.api

libraries:
- name: pycrypto
  version: 2.6
- name: ssl
  version: 2.7.11

env_variables:
  # The following values are to be replaced by information from the output of
  # 'gcloud endpoints services deploy swagger.json' command.
  ENDPOINTS_SERVICE_NAME: YOUR-PROJECT-ID.appspot.com
  ENDPOINTS_SERVICE_VERSION: 2016-08-01r0

where:

  • main é o nome do módulo e da variável Python para o seu servidor de API.
  • threadsafe está definido como verdadeiro se quiser que o App Engine envie vários pedidos em paralelo ou como falso se quiser que o App Engine envie pedidos em série.

Estão disponíveis definições adicionais, mas opcionais. Consulte a app.yaml referência para mais informações. No entanto, tenha em atenção que as informações em Exigir início de sessão ou estado de administrador e URLs seguros não se aplicam às APIs de back-end.