Maison > développement back-end > Golang > le corps du texte

Connectez-vous à Google Cloud Datastore à l'aide de dev_appserver.py et google.golang.org/

PHPz
Libérer: 2024-02-10 11:00:11
avant
1150 Les gens l'ont consulté

使用 dev_appserver.py 和 google.golang.org/ 连接到 Google Cloud Datastore

l'éditeur php Strawberry vous expliquera comment utiliser dev_appserver.py et google.golang.org/ pour vous connecter à Google Cloud Datastore. dev_appserver.py est un serveur de développement capable de simuler l'environnement Google App Engine, tandis que google.golang.org/ est une bibliothèque de codes officielle du langage Go. En utilisant les deux ensemble, vous pouvez facilement vous connecter à Google Cloud Datastore et lire et écrire des données. Dans cet article, nous expliquerons en détail les étapes spécifiques pour vous aider à démarrer rapidement et à vous connecter avec succès à Google Cloud Datastore.

Contenu de la question

Tout comme le titre l'indique. Nous avons une ancienne API AppEngine Go 1.11 qui nécessite dev_appserver.py 才能运行。简而言之,我希望 appengine.Main()appengine.NewContext(r) 允许我的应用程序使用我的 project-id 指向我的云数据存储,而不是本地模拟器的存储。我设置了 GOOGLE_APPLICATION_CREDENTIALS sans effet.

De cette façon, je peux exécuter le serveur localement tout en accédant à la base de données cloud partagée.

J'utilise google.golang.org/[email protected]dev_appserver.py --enable_console --port=8081 --support_datastore_emulator=true --go_debugging=true app.yaml

Est-ce possible ? Ou suis-je bloqué sur l'émulateur local lorsque j'utilise l'ancienne bibliothèque Go ?

Solution

Passer des commentaires aux réponses

  1. Découvrez Go 1.11 remote_api https://www.php.cn/link/2d680487650d66445b50d3d759eccad4

  2. La logique pour l'utiliser est similaire à -

    Si vous travaillez dans un environnement local, utilisez remote_api 否则坚持默认行为(即由于 remote_api, sinon respectez le comportement par défaut (c'est-à-dire que puisque

    n'est pas activé, il utilisera le simulateur dans l'environnement local ou directement en production en utilisant les données de production)

    Pour plus de simplicité, vous pouvez essayer d'utiliser le même nom de variable, c'est-à-dire

    if this is local environment
     ctx, err := remote_api.NewRemoteContext(host, hc)
    else
     ctx := appengine.NewContext(r)
    Copier après la connexion

    Vous utilisez ensuite "ctx" dans le reste de vos requêtes/appels au datastore

    Remarque :

    Je ne suis pas familier avec "go", alors considérez ce qui précède comme un pseudocode plutôt que comme du code fonctionnel
  3. --support_datastore_emulator=trueVous pouvez également envisager d'exécuter les modifications ci-dessus sans le

    drapeau
🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!