我正在使用 Google Cloud Endpoints 创建一个 API,如果没有任何内容可返回,我希望返回“无内容”HTTP 204 响应。我尝试返回 null,这会在开发服务器上引发错误,并在生产中返回非空结果,状态代码为 200。

是否可以发送真正的 204 空响应或其他类型或自定义响应?

最佳答案

要为生产 Python Cloud Endpoints API 返回 204 No Content,您可以使用 VoidMessage

from google.appengine.ext import endpoints
from protorpc import messages
from protorpc import message_types
from protorpc import remote

class MyMessage(messages.Message):
  ...

@endpoints.api('someapi', 'v1', 'Description')
class MyApi(remote.Service):

  @endpoints.method(MyMessage, message_types.VoidMessage,
                    ...)
  def my_method(self, request):
    ...
    return message_types.VoidMessage()

这当前在开发服务器上返回 200,感谢您发现此错误!

关于google-app-engine - 使用 Google Cloud Endpoints 发送 HTTP 204 响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15190471/

10-10 23:08