質問: お世話になります。 GCPとDjangoで定期的1日1回動かしたい、処理があります。 ``` cron: - description: "hoge" url: /batch/hoge schedule: every day 00:00 timezone: Asia/Tokyo ``` `https://example.com/batch/hoge`(これをcurlで叩くと実行される) というようなものを作ったのですが、こちらのcron.yamlをdeployしてしまうと、外部アクセスがあったときもこの処理がされてしまいます。 これを防ぐためにはどうしたら良いのでしょうか。 普通は、`/batch/xxx`などにスクリプトを書いて、crontabで動かすと思うのですが、GCPでもそのようなことはできるのでしょうか。またこのスクリプトにはDjangoの機能は使っておらず、素のpythonスクリプトになります。
回答: GCPのCronはリクエストヘッダーに自動でパラメーターを付加してくれます。 > > X-Appengine-Cron: true > > > リクエストの結果を調査して、上記のヘッダーがなければ処理がされないようにアプリケーションを作ってはどうでしょう。