gpt4 book ai didi

android - 如何在android中使用改造修复401未经授权的错误?

转载 作者:行者123 更新时间:2023-12-04 10:41:24 28 4
gpt4 key购买 nike

我在android中使用了retrofit2库。我收到 401 未经授权的错误。如果有人解决了这个问题,请在这里告诉我。我学习了在android中使用retrofit2。
这是 APIClient 类。
APIClient 类:

           public class APIClient {
private static Retrofit retrofit = null;
private static OkHttpClient okHttpClient = new OkHttpClient.Builder()
.connectTimeout(7, TimeUnit.MINUTES)
.readTimeout(7, TimeUnit.MINUTES)
.writeTimeout(7, TimeUnit.MINUTES)
.build();
public static Retrofit getClient() {
HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient client = new OkHttpClient.Builder().addInterceptor(interceptor).build();

retrofit = new Retrofit.Builder().baseUrl("http://www.example.com/").addConverterFactory(GsonConverterFactory.create())
.client(okHttpClient).build();

return retrofit;
}
}

这是我的界面。
                    public interface APIInterface {
@GET("/teacher/api/getStudentTakeAttendanceList")
Call<List<Apiresponse>> getstudentAttendanceListView(@Query("teacherId") int userId);

// Callback<List<Apiresponse>> studentAttendanceListView(@Query("teacherId") int userId);
}

这是我最后的呼吁。
final Call<List<Apiresponse>> getstudentAttendanceListView = apiInterface.getstudentAttendanceListView(userId);
getstudentAttendanceListView.enqueue(new Callback<List<Apiresponse>>() {
@Override
public void onResponse(Call<List<Apiresponse>> call, Response<List<Apiresponse>> response) {
Log.d("responsecode:::", "" + response.code());

if (progressDialog.isShowing()) {
progressDialog.dismiss();
}

Log.e("response::", "" + response.errorBody());

// Log.e("response::", "" + response.body());

}

@Override
public void onFailure(Call<List<Apiresponse>> call, Throwable t) {
call.cancel();
if (progressDialog.isShowing()) {
progressDialog.dismiss();
}

}
});
in app.gradle file.
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
output.
responsecode:::: 401
response::: okhttp3.ResponseBody$1@537beb4c

最佳答案

A 401 Unauthorized error意味着您无权访问。
在您的情况下,这意味着您必须添加带有 accessToken 的 header 。

Here解释了如何做到这一点。

关于android - 如何在android中使用改造修复401未经授权的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59910397/

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