尝试生成发现文档时获取503服务不可用

时间:2013-02-16 16:06:08

标签: python google-app-engine http-status-code-503 service-discovery google-cloud-endpoints

我正在使用Google Cloud Endpoints,我正在尝试生成一个发现文档来创建iOS客户端库,以便我可以测试我的端点。我尝试使用此命令执行此操作,如文档中所述:

endpointscfg.py gen_discovery_doc -o . -f rpc appfile.ApiClass

appfileApiClass更改为真实姓名。

当我跑步时,我得到:

urllib2.HTTPError: HTTP Error 503: Service Unavailable

为什么要生成一个访问互联网的发现文档?为什么我会收到此错误?我该怎么做才能解决它?

P.S。我已经检查了我的代码中的基本错误,比如消息类中的其他类型,错误的主机名等,但似乎没有任何问题。

2 个答案:

答案 0 :(得分:1)

RE:“为什么要生成一个访问互联网的发现文档?”

您的API类将传递给ApiConfigGenerator.pretty_print_config_to_json method,以创建定义裸API配置的描述符。此描述符将发送到Web API,该API链接到Google的API基础结构,以便从裸API配置创建发现文档。

RE:“为什么我收到此错误?”

您的API配置可能无效,这通常是由无效的API类定义引起的。当您尝试运行或部署应用程序时,您是否有任何错误或堆栈跟踪?如果没有,那么运行Web服务的代码中的错误可能会产生发现文档,我很乐意调查它。

答案 1 :(得分:1)

在生成发现文档时遇到类似问题后,

当某些内容不存在时,将发生503错误。在我的情况下,它应该是无效的API类定义。

确保@Api()定义以小写字符开头,否则将返回503错误。

例如

//@Api(name = "thisMustBeLowerCase") otherwise client libraries wont compile.

 @Api(name = "sampleEndpoint") 
public class SampleEndpoint {...}

希望它有助于