Configuration et fichiers requis

Votre projet doit contenir au minimum les fichiers suivants :

Fichier et emplacement Description
/src/<your_api_class>.py Fichier de classe (ou plusieurs fichiers, si vous mettez en œuvre l'API dans différentes classes) contenant l'API backend.
/src/<your_api_server>.py Fichier facultatif contenant le code du serveur d'API, si vous ne l'incluez pas dans la classe d'API.
/src/app.yaml Descripteur de déploiement d'applications Web requis pour la configuration d'App Engine.

Le contenu de chacun des fichiers requis est détaillé dans les sections suivantes.

Fichier de classe de l'API

Le contenu obligatoire et facultatif du fichier de classe (ou des fichiers, si vous utilisez une API multiclasse) est décrit en détail dans l'article Créer une API Endpoints.

Fichier du serveur d'API

La page Créer un serveur Web contient une description détaillée de ce fichier et de son contenu.

app.yaml

Le contenu minimum requis pour ce fichier est le suivant :

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
    

où :

  • main est le nom du module Python et de la variable du serveur d'API.
  • threadsafe est défini sur "true" (vrai) si vous souhaitez qu'App Engine envoie plusieurs requêtes en parallèle ou sur "false" (faux) si vous souhaitez qu'App Engine envoie les requêtes en série.

Des paramètres supplémentaires, mais facultatifs, sont disponibles. Pour plus d'informations, consultez la documentation de référence sur app.yaml. Toutefois, notez que les informations des articles Demander une connexion ou des droits d'administrateur et URL sécurisées ne s'appliquent pas aux API backend.