gpt4 book ai didi

java - Google App Engine 整数数组参数

转载 作者:行者123 更新时间:2023-11-30 09:03:40 26 4
gpt4 key购买 nike

我正在尝试将 int[] 作为参数传递到我的端点(使用 Objectify)。这是端点方法:

@ApiMethod(name = "getThemeDetailsFromList")
public CollectionResponse<Theme> getThemeDetailsFromList(@Named("ids") int[] ids) {
List<Theme> execute = new ArrayList<>();
for (int id:ids) {
execute.add(getTheme(id));
}
return CollectionResponse.<Theme> builder().setItems(execute).build();
}

这是我的应用程序中的部分代码:

                        Set<String> themes = tm.getFavoritesByID();
List<Integer> ids = new ArrayList<>();
for (String id: themes) {
ids.add(Integer.parseInt(id));
}
results = endpoint.getIconThemeDetailsFromList(ids).execute();

我尝试传入一个 int[] 作为 id,但它不允许我只接受一个 ArrayList。当我运行该应用程序时,出现以下返回错误:

> com.google.api.client.googleapis.json.GoogleJsonResponseException: 400
> Bad Request { "code": 400, "errors": [
> {
> "domain": "global",
> "location": "ids[0]",
> "locationType": "parameter",
> "message": "Invalid integer value: '3,1,5'.",
> "reason": "invalidParameter"
> } ], "message": "Invalid integer value: '3,1,5'." }

ids 是 {3,1,5} 的数组列表。我不知道为什么它让我传递一个 List 以及为什么它给我返回错误。

最佳答案

所以我最终根据我的要求创建了一个新类:

public class BatchThemeRequest {
private int[] ids;

public void setIds(int[] ids) {
this.ids = ids;
}

//code here
}

我将后端编辑为:

public CollectionResponse<Theme> retrieveBatchWithCursor(BatchThemeRequest batchThemeRequest) {
// code here
}

在应用程序中,我将创建一个新的 BatchThemeRequest 并将我的 int[] 添加到 via setIds() 中;

关于java - Google App Engine 整数数组参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25560745/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com