Извлечение App Engine из другого приложения изнутри

Просто из любопытства, есть ли в App Engine способ извлечения данных из другого приложения App Engine, использующего какой-то внутренний URL-адрес (похожий на соединение CloudSql)?

Например, вместо этого:

urlfetch.fetch("https://my-app-id.appspot.com/url/to/fetch")

Сделайте что-то вроде этого:

urlfetch.fetch("/appengine/my-app-id/url/to/fetch")

2 ответа

Вы можете передавать данные через Google Cloud Storage с помощью клиентской библиотеки GCS.

Вам просто нужно добавить учетную запись службы для совместного использования Google Cloud Storage.

Простой вариант использования в Python:

#!/usr/bin/env python
import cloudstorage as gcs

with gcs.open('your-bucket/your-file.txt', 'w') as gcs_file:
    gcs_file.write('hello world\n')

После того, как вы поделились корзиной с вашими проектами, вы можете получить доступ к одному и тому же файлу в указанной корзине на каждом экземпляре App Engine в разных проектах.

Это самый простой способ обмена данными между различными проектами приложений.

Согласно документации, приложения могут сообщать друг другу. Проверить X-Appengine-Inbound-Appid поле для авторизации.

Другие вопросы по тегам