如何让Google表单提交事件触发器被Flask网站捕获以更新该网站?
我有一个写在Flask上的网站,我想在谷歌表单的答案提交后更新它 更准确地说,我已经将表单与谷歌电子表格相关联,我可以从Flask中读取该电子表格,但缺少的关键组件是如何在新答案提交到表单时触发网站更新其内容如何让Google表单提交事件触发器被Flask网站捕获以更新该网站?,flask,google-apps-script,google-sheets,google-sheets-api,google-forms,Flask,Google Apps Script,Google Sheets,Google Sheets Api,Google Forms,我有一个写在Flask上的网站,我想在谷歌表单的答案提交后更新它 更准确地说,我已经将表单与谷歌电子表格相关联,我可以从Flask中读取该电子表格,但缺少的关键组件是如何在新答案提交到表单时触发网站更新其内容 最好的方法是什么?您可以创建一个表单提交触发器来触发一个Google应用程序脚本函数,该函数调用您的Flask站点并触发更新 您可以创建一个表单提交触发器来触发一个Google应用程序脚本函数,该函数调用您的Flask站点并触发更新 Webhook解决方案: 谷歌表单: from http
最好的方法是什么?您可以创建一个表单提交触发器来触发一个Google应用程序脚本函数,该函数调用您的Flask站点并触发更新
您可以创建一个表单提交触发器来触发一个Google应用程序脚本函数,该函数调用您的Flask站点并触发更新 Webhook解决方案: 谷歌表单:
from http import HTTPStatus
from flask import (
abort,
request
)
@blueprint.route('/webhook', methods=['POST'])
def handle_webhook():
payload = request.get_json()
if payload.get('token') != "sometokenheretocheckonbackend":
abort(HTTPStatus.UNAUTHORIZED)
# Update your content
return jsonify({'success': True}), HTTPStatus.OK
from http import HTTPStatus
from flask import (
abort,
request
)
@blueprint.route('/webhook', methods=['POST'])
def handle_webhook():
payload = request.get_json()
if payload.get('token') != "sometokenheretocheckonbackend":
abort(HTTPStatus.UNAUTHORIZED)
# Update your content
return jsonify({'success': True}), HTTPStatus.OK
定期更新(替代解决方案):
<>我会考虑启动一个守护进程线程,它周期性地更新这个内容。这显然没有那么优雅,但应该工作得相当稳定,如果内容更新过程相当轻量级,对服务器的要求也不会太高。Webhook解决方案:
谷歌表单:
from http import HTTPStatus
from flask import (
abort,
request
)
@blueprint.route('/webhook', methods=['POST'])
def handle_webhook():
payload = request.get_json()
if payload.get('token') != "sometokenheretocheckonbackend":
abort(HTTPStatus.UNAUTHORIZED)
# Update your content
return jsonify({'success': True}), HTTPStatus.OK
from http import HTTPStatus
from flask import (
abort,
request
)
@blueprint.route('/webhook', methods=['POST'])
def handle_webhook():
payload = request.get_json()
if payload.get('token') != "sometokenheretocheckonbackend":
abort(HTTPStatus.UNAUTHORIZED)
# Update your content
return jsonify({'success': True}), HTTPStatus.OK
定期更新(替代解决方案):
<>我会考虑启动一个守护进程线程,它周期性地更新这个内容。这显然没有那么优雅,但应该工作得相当稳定,如果内容更新过程相当轻量级,对服务器的要求也不会太高。谢谢你。我很想知道我应该在Flask中使用哪一个python模块来实现这一点,理想的情况是使用一段代码,在Google端使用哪些函数,在Flask端使用哪些函数。嗨,Michael,不幸的是,在Flask端我帮不上忙,我以前没有使用过ti。您需要一种从应用程序脚本端接收HTTP请求的方法。谢谢您。我很想知道我应该在Flask中使用哪一个python模块来实现这一点,理想的情况是使用一段代码,在Google端使用哪些函数,在Flask端使用哪些函数。嗨,Michael,不幸的是,在Flask端我帮不上忙,我以前没有使用过ti。您需要一种从应用程序脚本端接收HTTP请求的方法。非常感谢Kristof提供的此解决方案,它似乎正是解决此问题的解决方案。非常感谢Kristof提供的此解决方案,它似乎正是解决此问题的解决方案。