是的。您需要有一个为远程API提供服务的AppEngine应用程序。例如,您将有一个python应用程序,在app.yaml:中有以下行
是否使用ServiceAccountCredential处理P12文件。我正试图在Java中使用它,并得到错误com.google.appengine.repackaged.com.google.api.client.HttpResponseException:302发现
- url: /remoteapi.*
script: google.appengine.ext.remote_api.handler.application
或者在web.xml中包含以下内容的java应用程序:
<servlet>
<display-name>Remote API Servlet</display-name>
<servlet-name>RemoteApiServlet</servlet-name>
<servlet-class>com.google.apphosting.utils.remoteapi.RemoteApiServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>RemoteApiServlet</servlet-name>
<url-pattern>/remote_api</url-pattern>
</servlet-mapping>
请注意,根据您的客户端,它可能会调用不同的url,例如/remote_api
此外,如果你已经在一个模块中部署了AppEngine应用程序,在客户端代码中考虑到这一点,你会得到:
RemoteApiOptions raoptions = new RemoteApiOptions()
.server("my-module-dot-my-project.appspot.com", 443)
.useServiceAccountCredential("my-service-account-id", "my-p12-file.p12");
RemoteApiInstaller installer = new RemoteApiInstaller();
installer.install(raoptions);
希望能有所帮助!