如何在 Python Google Cloud 函数中返回特定状态
Posted
技术标签:
【中文标题】如何在 Python Google Cloud 函数中返回特定状态【英文标题】:How to return with a specific status in a Python Google Cloud Function 【发布时间】:2019-07-31 14:47:54 【问题描述】:我注意到我可以提出或返回,产生 500 或 200 个响应。例如:
def random(request):
coin = [true, false]
if random.choice(coin):
succeed()
else:
fail()
def succeed():
return ' "status": "success!"'
def fail():
raise Exception("failure")
类似的东西会产生 500 或 200 响应。但它不会,例如,让我在正文中引发 422 错误。
我可以这样做吗?
【问题讨论】:
【参考方案1】:在底层,Cloud Functions 只是使用Flask,因此您可以返回任何可以从 Flask 端点返回的内容。
您可以像这样一起返回正文和状态代码:
def random(request):
...
return "Can't process this entity", 422
或者,您可以返回一个成熟的 Flask Response
object:
import flask
def random(request):
...
return flask.Response(status=422)
【讨论】:
以上是关于如何在 Python Google Cloud 函数中返回特定状态的主要内容,如果未能解决你的问题,请参考以下文章
如何在Python和Java中访问Google Cloud Endpoints请求标头
如何访问 Python google.cloud.storage 上传方法中的错误原因?
如何在 Python 中运行 Google Cloud Function 中的子进程
Google Cloud Storage:如何在 Python 中(递归)删除文件夹