gpt4 book ai didi

java - 如何使用 retrofit2 进行 GET 请求?

转载 作者:搜寻专家 更新时间:2023-11-01 08:31:01 24 4
gpt4 key购买 nike

我有一个在本地主机上运行的 restfull web 服务。我想对该其余 URL 发出 retrofit2 GET 请求。

MainActivity.java

private void requestData() {
public static final String BASE_URL = "http://192.168.0.103:8080/SpringWithHibernate/users/";
Toast.makeText(MainActivity.this, "In requestData() :: " + "ddd", Toast.LENGTH_LONG).show();

Gson gson = new GsonBuilder().create();

Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create(gson))
.build();

GetUserListAPI api = retrofit.create(GetUserListAPI.class);

api.getUsersList().enqueue(new Callback<List<UserPojo>>() {
@Override
public void onResponse(Call<List<UserPojo>> call, Response<List<UserPojo>> response) {
Log.d("UserList :: ", "Success");
Log.d("UserList :: ", "Code :: " + response.code());

user = response.body();

// Log.d("UserList :: ", "count :: " + user.size());

// Log.d("UserList :: ", "Result :: " + user.get(1).getUsername());
}

@Override
public void onFailure(Call<List<UserPojo>> call, Throwable t) {
Log.d("UserList :: ", "Failure");
}
});

}

GetUserListAPI.java接口(interface):

public interface GetUserListAPI {
@GET("/users")
Call<List<UserPojo>> getUsersList();
}

当我调用 requestData() 方法时,我不断收到 response.code() 作为 404。

谁能帮我看看我哪里弄错了?

感谢和问候。

最佳答案

你的 baseurl 最后包含/users。它应该被删除,因为应用程序将从接口(interface) @GET("/users") 接收它你的 baseUrl 应该是

public static final String BASE_URL = "http://192.168.0.103:8080/SpringWithHibernate/"

在界面中

public interface GetUserListAPI {
@GET("users")
Call<List<UserPojo>> getUsersList();
}

关于java - 如何使用 retrofit2 进行 GET 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40880577/

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