Java 改装:@GET中的多个查询参数
我对@GET中的多个参数有问题。若我有两个,一切正常,但若我有三个(我需要三个),它将跳过onResponse方法并执行onFailure。有人知道为什么吗 这是接口Java 改装:@GET中的多个查询参数,java,android,get,retrofit2,Java,Android,Get,Retrofit2,我对@GET中的多个参数有问题。若我有两个,一切正常,但若我有三个(我需要三个),它将跳过onResponse方法并执行onFailure。有人知道为什么吗 这是接口 @GET("CalendarJson") Call<List<Raspored>> getKalendar( @Query("department") String department, @Query("semester") String semester,
@GET("CalendarJson")
Call<List<Raspored>> getKalendar(
@Query("department") String department,
@Query("semester") String semester,
@Query("year") int year);
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(basicUrl)
.addConverterFactory(GsonConverterFactory.create())
.build();
KalendarService kalendarService = retrofit.create(KalendarService.class);
@GET(“CalendarJson”)
打电话给格特卡伦达(
@查询(“部门”)字符串部门,
@查询(“学期”)字符串学期,
@查询(“年”)int year;
改装改装=新改装.Builder()
.baseUrl(basicUrl)
.addConverterFactory(GsonConverterFactory.create())
.build();
KalendarService KalendarService=reformation.create(KalendarService.class);
这就是我所说的
KalendarService.kalendarService.getKalendar(department,semester,year).enqueue(new Callback<List<Raspored>>() {
@Override
public void onResponse(Call<List<Raspored>> call, Response<List<Raspored>> response) {
if(response.isSuccessful()){
raspored = response.body();
//TODO
}
}
@Override
public void onFailure(Call<List<Raspored>> call, Throwable t) {
Toast.makeText(getApplicationContext(), "Failure", Toast.LENGTH_SHORT).show();
}
});
KalendarService.KalendarService.getKalendar(系、学期、年).enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful()){
raspored=response.body();
//待办事项
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Toast.makeText(getApplicationContext(),“Failure”,Toast.LENGTH_SHORT.show();
}
});
我认为这与第三个参数的数据类型有关但是如果我删除第二个参数,一切都正常。第三个参数是int year=calendar.get(calendar.year)不,我想我不需要它。我有一个url,我需要从中获取json数据,基于url中的三个参数,您如何知道它返回正确的json数据?有了这三个参数,json可以被解析为一个“Raspored”列表,但有两个参数就不能了?