У меня есть приложение в App Engine
, которое pu sh публикует на Pub/Sub
в топике c с именем PostToFacebook, которое вызывает Cloud Function
. После того, как функция обработает сообщение и отправит его в Facebook, она вызывает другой Pub/Sub
topi c (UpdateFBLink) и завершает свою задачу. Второй топи c запускает конечную точку App Engine
, которая обновляет ссылку на документ Facebook на Firestore
.
Проблема в том, что вторая топи c продолжает отправлять почтовый запрос на конечную точку App Engine
каждые 20 минут, несмотря на получение 200 (успешных) ответов на все запросы.
В настоящее время я я вызываю конечную точку напрямую, избегая второго topi c, но это временное исправление, и мне было интересно, есть ли способ сохранить Pub/Sub
в моем решении и заставить его вызывать только один раз в случае успешного ответа.
def postToFacebook(some post here):
try:
updateFBlink(data)
except Exception as e:
return e
return (OK)
def updateFBlink(data):
try:
PROJECT='flasklf'
PUBSUB_TOPIC= 'getfburl'
topic_path = publisher.topic_path(PROJECT,PUBSUB_TOPIC)
future = publisher.publish(topic_path, data=data)
except Exception as e:
return e
return (OK)