【问题标题】:How do you return a Partial response in app engine python endpoints?如何在应用引擎 python 端点中返回部分响应?
【发布时间】:2014-02-02 21:10:07
【问题描述】:

我正在学习端点,并看到其他 Google API 具有此“字段”查询属性。
它也出现在 api explorer 中。

我也想为我的 api 获得部分响应,但是当使用 api 资源管理器中的字段选择器时,它会被服务器简单地忽略。
我需要在服务器端实现一些东西吗?
在文档中没有找到任何内容。
欢迎任何帮助。

【问题讨论】:

    标签: google-app-engine python-2.7 google-cloud-endpoints


    【解决方案1】:

    据我所知,Google 已为其 API 启用部分响应,但尚未解释如何为自定义 API 启用它。 我假设如果他们确实让我们知道,它可能需要注释,并可能覆盖一两个方法。

    我也一直在寻找,但无济于事。 由于一个相关的问题,我一直在研究这个问题,我想知道如何在我的谷歌端点 API 的响应中强制 JSON 对象,甚至包括空值的类成员。 我试图查看如果我使用带有指示为 null 的字段的部分响应是否会返回任何内容。响应是否至少具有该属性,或者它是否仍然不作为属性存在。

    无论如何,这让我进行了同样的研究,我不相信我们可以在我们自己的 API 中启用部分响应。

    【讨论】:

    • 感谢您的回复。我想这是不可能的。但我想你可以实现自己的 endpoints.ResourceContainer,它有一个“字段”StringField,你可以稍后解析它以返回你的响应。
    【解决方案2】:

    您可以通过在@MyModel.method 中定义参数来返回部分响应

    @MyModel.method(path='mymodel',
                      http_method='POST',
                      name='mymodel.insert',
                      response_fields=('model_id', 'date_time'))
    def mymodel_insert(self, mymodel):
        mymodel.put()
        return mymodel
    

    查看本教程Endpoints tutorial

    【讨论】:

      猜你喜欢
      • 2014-03-10
      • 2016-11-28
      • 1970-01-01
      • 1970-01-01
      • 2015-04-08
      • 1970-01-01
      • 1970-01-01
      • 2012-03-08
      • 2023-04-06
      相关资源
      最近更新 更多