部署后的Google Cloud Endpoint 404

时间:2013-02-21 19:53:05

标签: google-app-engine http-status-code-404 google-cloud-endpoints

现在已经向所有开发人员开放了Google Cloud Endpoints,我创建了一个Google Cloud Endpoint,可以在Eclipse调试中运行本地运行。但是当我部署时,实时端点只返回HTTP 404.我的项目的JSP页面在本地运行并部署。它只是部署后不起作用的端点。

任何人都知道我需要做什么来部署云端点?

8 个答案:

答案 0 :(得分:12)

我发现即使我只部署了一个版本(v1),并且该版本被指示为"默认"在app引擎管理控制台中的版本,我仍然需要设置"在API可访问之前,v1是默认值。

答案 1 :(得分:2)

端点目前仅支持默认应用版本的API。

答案 2 :(得分:1)

我注意到您必须通过使部署的版本为默认版本来访问您的终端。例如https://yourappid.appspot.com/_ah/api/path/v2/methodname。如果您使用https://someappversion.yourappid.appspot.com/_ah/api/path/v2/methodnamel,则根据我的经验无法使用

答案 3 :(得分:0)

您是否尝试通过API资源管理器访问它们?

昨天我遇到了同样的问题......恰巧使用了错误的地址。

答案 4 :(得分:0)

V2是错误的。 API版本不会随着Appengine版本而增加!这是两个不同的版本。尝试使用版本1.

答案 5 :(得分:0)

我遇到了这个问题,我的问题是我没有生成"云终端云库"在日食中。

一旦我做到了,一切都运转良好。

答案 6 :(得分:0)

从App Engine 1.7.7及更早版本开始,这也可能是因为忘记将您的Endpoint类添加到web.xml,如下所示:

<servlet>
    <servlet-name>SystemServiceServlet</servlet-name>
    <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class>
    <init-param>
        <param-name>services</param-name>
        <!-- Careful! No whitespace but commas between class names. -->
        <param-value>ditto.api.CategoryEndpoint,ditto.api.PostEndpoint</param-value>
    </init-param>
</servlet>

答案 7 :(得分:0)

要添加到已接受的答案中,如果您的API是用Java编写的,并且您正在使用Maven,则可以通过将其添加到appengine-maven-plugin的配置中来自动生成API版本。部署后,版本号将自动更新,并且部署的版本将设置为您API的唯一当前运行版本:

  <plugin>
    <groupId>com.google.cloud.tools</groupId>
    <artifactId>appengine-maven-plugin</artifactId>
    <version>${appengine.maven.plugin.version}</version>
    <configuration>
      <deploy.projectId>my-gcp-project-name</deploy.projectId>
      <deploy.version>GCLOUD_CONFIG</deploy.version>
    </configuration>
  </plugin>

相关行是<deploy.version>GCLOUD_CONFIG</deploy.version>GCLOUD_CONFIG是您需要的实际值-部署时会被识别为特殊变量)