从Google AppEngine 1.8.5开始,开发环境中出现了一个新警告:
WARNING 2013-09-27 10:10:53,035 api_config.py:1768] Method specifies path
parameters but you are not using a ResourceContainer. This will fail in future
releases; please switch to using ResourceContainer as soon as possible.
什么是ResourceContainer,以及如何使用它们?
最佳答案
他们最近更新了文档,以在此处说明此更改:Google App Engine Docs
基本上,您要做的是将请求正文和查询/路径参数分开。
请求主体将是普通的messages.Message
类,您可以在ResourceContainer
中定义任何其他参数。
YOUR_RESOURCE_CONTAINER = endpoints.ResourceContainer(
MyRequestBodyMessagesClass,
parameter1=messages.IntegerField(2, required=True)
parameter2=messages.StringField(3))
此更改应有助于最大程度地减少必需的消息类,因为您也可以将RequestBody-Message再次用于Response-Messages。
注意:如果使用endpoints-proto-datastore,则有一个open issue。