1

所以我在 Eclipse 中创建了一个 App Engine Connected Android 应用程序并部署得很好。示例代码也可以正常工作。

但现在我想添加新的端点。我创建它们,添加@Api 标记、方法,并从 Javascript 和 Android 调用它们。

当我调用本地部署的服务器时工作正常,但在调用部署的应用程序引擎时却不行。

基本上我得到的只是“内部错误”,并且应用引擎日志中没有任何内容,除了调用 api 方法的注释。

所以两个问题:

1)为什么它在本地工作而不是在应用程序引擎上工作。该方法所做的只是返回一个硬编码的字符串列表。

2) 更一般地说,如何在获取内部错误时获取更多信息?

似乎很难调试应用程序引擎错误。

4

1 回答 1

0

我在端点上也遇到了奇怪的错误,调试确实非常困难。我认为您必须遵循几条规则,即:

  • 您的 api 和方法名称不能使用“_”,所以@Api(name="my_api")是错误的,@Api(name="myApi")是正确的。
  • 您的 api 方法不能返回简单类型,因此返回String是错误的,但返回MyString是正确的。您的方法也可以返回void

自定义端点的示例应如下所示:

import com.google.api.server.spi.config.Api;
import com.google.api.server.spi.config.ApiMethod;

@Api(name="myApi",
     path="my_api")
public class MyEndpoint {

    @ApiMethod (name="myMethod", 
                path="my_method",
                method="httpMethod = HttpMethod.POST")
    public MyCustomObject myMethod () {
        ...
    }
}

请注意,所有注释属性都是可选的。

于 2013-03-17T15:47:59.157 回答