我想打这样的电话:
/api/basket/info?id={value}-{extra}$&id={value2}
暂时发送如下值:
@GET("/api/basket/info")
fun getInfo(@Query("id") value: List<String>)
我的问题是如何在查询中将值“ id”用“-”分隔的“多余”传递给我们。
这是我调用api的时间。
fun getBagInfo(value: List<String>? = null, extra:List<String>? = null){
val response = api.getBagInfo(value).execute() }
答案 0 :(得分:0)
我希望您拥有与api通信的方法。我使用过Java,但是您可以将其转换为Kotlin。
public Call<Object> getBasketInfo(int value1, int[] extraValues, int value2) {
if (extraValues.length == 0) {
getBasketInfo(String.valueOf(value1), String.valueOf(value2));
} else {
StringBuilder sb = new StringBuilder();
for (Integer in : extraValues) {
sb.append("-").append(in);
}
getBasketInfo(value1 + sb.toString(), value2 + ""));
}
}
它将调用:
/api/basket/info?id=1&id=3
/api/basket/info?id=1-2&id=3
/api/basket/info?id=1-2-3&id=3
答案 1 :(得分:0)
我想,在您的情况下,最简单的选择是使用POST而不是GET。您是否有机会更改服务器api?
问题是后端将不接受get请求中的ID列表。因为它具有request.getParameter(id)
之类的方法。后端不知道哪个ID。