API端点在API方法中支持哪些参数类型?

时间:2013-07-19 10:40:30

标签: google-app-engine google-cloud-endpoints

我可以使String,Date和Long工作。如果我使用byte [],运行endpoints.sh脚本时会出错。我在文档中找不到任何内容,列出了支持的类型,并且错误产生了非常神秘的内容。我想在端点方法中获得一点二进制(图像)数据。这不好:

@ApiMethod(name = "device.bikeImage.set")
public void setDeviceBikeImage(com.google.appengine.api.users.User appEngineUser,
        @Named("facebookAccessToken") @Nullable String facebookAccessToken,
        @Named("deviceId") String deviceId, @Named("bikeImage") byte[] bikeImage)
        throws IOException, OAuthRequestException {
}

支持哪些类型?

2 个答案:

答案 0 :(得分:2)

支持的数据类型在端点文档right here中进行了描述。

  

支持的参数类型如下:

     

java.lang.String java.lang.Boolean和boolean
  java.lang.Integer和int
  java.lang.Long和long java.lang.Float和float
java.lang.Double   和double
java.util.Date
com.google.api.server.spi.types.DateAndTime
  com.google.api.server.spi.types.SimpleDate
任何枚举
任何数组或   java.util.Collection参数类型

答案 1 :(得分:0)

以下文章列出了支持的值类型(转到“属性和值类型”部分:

https://developers.google.com/appengine/docs/java/datastore/entities

使用Endpoints时,您肯定仅限于那些可以序列化为JSON的类型。

在这两个问题中,关于从端点提供blob的讨论也很少:

  1. How can I upload an thumbnail image (blob) at the same time as an Entity into a datastore in google app engine?

  2. Serving blob from app-engine endpoint