我正在使用Google Cloud Endpoint
来处理Java。我创建了一些端点。
这是其中之一。
public User registerUser(@Named("lat") double lat, @Named("lng") double lng, @Nullable @Named("contactList") List<Long> contactList, User user){
正如您所看到的,contactList
注释为@Nullable
,有时我需要此参数,有时则不需要。当我在 API Explorer
毕竟,我为Android生成了客户端库。而我正在使用它。
MyApi.Builder builder = new MyApi.Builder(AndroidHttp.newCompatibleTransport(), new JacksonFactory(), null);
MyApi service = builder.build();
service.account().registerUser(31.024937, 73.847913, user);
registerUser
只提供三个参数。如果我想通过contactList
我该怎么做?没有选项可以在registerUser
中传递它。如果我试图通过它,则会出现错误。
答案 0 :(得分:1)
最后,我发现自己回答了问题。在查看生成的库的一些代码后,我发现所有@Nullable
参数都无法传递到函数中,但使用此函数设置后,请检查下面的代码以便更好地理解。
service.account().registerUser(31.024937, 73.847913, user)
.setContactList(contactList).execute();
生成的库会自动创建一个用于设置@Nullable
参数的函数,例如setContactList()
。