我正在尝试从randomuser.me公共API中获取一些用户,但当我尝试在网址中添加查询时,我无法进行改进。
这是我正在尝试做的请求,如果你把它放在浏览器中,你可以看到这似乎是正确的,因为有效,但在改造方法中我没有任何价值。
https://randomuser.me/api/?results=20
CODE:
mCall = ApplicationConfig.getApiService().getRandomUsers(20);
Log.e(TAG, mCall.request().url().toString());
mCall.enqueue(new Callback<RandomUserResponse>() {
@Override
public void onResponse(Call<RandomUserResponse> call, Response<RandomUserResponse> response) {
if (response.isSuccess()) {
in.onRandomUserData(response.body().getResults());
}
}
@Override
public void onFailure(Call<RandomUserResponse> call, Throwable t) {
}
});
}
public interface ApiInterface {
@GET("api/")
Call<RandomUserResponse> getRandomUsers(@Query("results") Integer results);
}
public class ApiClient {
public static final String BASE_URL = "https://randomuser.me/";
private static Retrofit retrofit = null;
public static Retrofit getClient() {
if (retrofit==null) {
retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
}
如果我尝试这样做......改装方法有效:
@GET("api/")
Call<RandomUserResponse> getRandomUsers();
mCall = ApplicationConfig.getApiService().getRandomUsers();
... ...
我的问题是,¿如果用户在浏览器中添加查询并且有效,我为什么不能让用户添加查询?