如果调用者是 Google App Engine,如何在 Django 中仅 运行 Google App Engine cronjobs?

How to only run Google App Engine cronjobs in Django if the caller is the Google App Engine?

我已经将 Django 项目部署到 Google App Engine。我想将 cronjobs 添加到我的 Django 项目中,Google App Engine 中有一个很酷的功能。

如果我理解得很好,我必须在 views.py 中为我的 cronjobs 创建 GET 函数。但是我如何让它们只能被 App Engine 调用,而不能被其他人调用? 或者,也许 Django 中的 cronjobs 有更好的解决方案?

您可以通过在端点检查 header X-Appengine-Cron 来验证您的请求。此 header 仅在您的端点由 GAE cron 作业触发时提供。

参考资料link: https://cloud.google.com/appengine/docs/standard/python3/scheduling-jobs-with-cron-yaml#validating_cron_requests