Google Cloud Endpoints参数限制

时间:2015-06-24 03:15:42

标签: java android google-app-engine cloud google-cloud-endpoints

我使用Google Cloud Endpoints将数据从我的Android客户端应用程序返回到我的Google App Engine实例 我似乎达到了参数大小限制并获得了413 Full Head Returned。 抛出的异常是: com.google.api.client.googleapis.json.GoogleJsonResponseException:413 FULL head

该参数是包含序列化JSON的String。长度方面,我传递给参数的字符串是4226个字符(Java String)。 我用google搜索并查看了其他一些stackoverflow答案,但没有一个直接处理长度问题。 据我所知,我没有达到POST数据限制,但我找不到任何Google文档说明API中的参数限制。

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

我找到了答案。我使用@Named参数传回json。这意味着APIURL上使用的查询参数超出了URL长度的限制。

更仔细地阅读本文https://cloud.google.com/appengine/docs/java/endpoints/annotations#apimethod_method-scoped_annotations 我意识到对于Entity(和长字符串),我应该简单地返回实体而不是使用@Named参数。

我将代码更改为

@ApiMethod(name = "saveCompletedForm", httpMethod=HttpMethod.POST)
        public SaveFormResponse saveCompletedForm(FullFormBean formBean, @Named("username") String userName, @Named("pwd") String password)
        {...