【问题标题】:Google Cloud Function API Parameters not accepting谷歌云函数 API 参数不接受
【发布时间】:2020-08-11 00:05:44
【问题描述】:
所以我有一个从 HTTP 触发器运行的 python 谷歌云函数。出于某种原因,我必须输入一个参数(myfakeinput)才能触发此功能。我找不到任何文档来查看该功能实际上是什么以及需要什么格式。我尝试添加第二个参数,但没有成功,并得到一个 500 错误,问题日志中没有任何内容。我也尝试过返回“myfakeinput”,但这最终也会导致 500 错误。
有谁知道传入的参数的值是什么样的,或者它的格式是什么,以便我可以实际传入一个参数?
谢谢!
【问题讨论】:
标签:
python
google-cloud-platform
google-api
【解决方案1】:
我建议你看看这个documentation here。
from flask import escape
def hello_http(request):
"""HTTP Cloud Function.
Args:
request (flask.Request): The request object.
<http://flask.pocoo.org/docs/1.0/api/#flask.Request>
Returns:
The response text, or any set of values that can be turned into a
Response object using `make_response`
<http://flask.pocoo.org/docs/1.0/api/#flask.Flask.make_response>.
"""
request_json = request.get_json(silent=True)
request_args = request.args
if request_json and 'name' in request_json:
name = request_json['name']
elif request_args and 'name' in request_args:
name = request_args['name']
else:
name = 'World'
return 'Hello {}!'.format(escape(name))
因此,“flask”使您的代码可以使用对象“request”。在上面的代码中,然后从对象中提取参数列表并放入变量“request_args”中。
request_json = request.get_json(silent=True)
request_args = request.args
希望这会有所帮助,
弗雷德里克