我在进行改进时遇到了问题,由于某些更改,我不得不将Api基本网址从http://api.example.com更改为http://example.com/web,问题是,改进忽略了/ web /部分导致500错误的路径
public static final String BASE_API_URL = "http://example.com/web/" ;
在我的ApiClient.java文件中:
if (apiRequests == null) {
OkHttpClient okHttpClient = new OkHttpClient().newBuilder()
.addInterceptor(new HeaderInterceptor())
.connectTimeout(timeout, TimeUnit.SECONDS)
.readTimeout(timeout, TimeUnit.SECONDS)
.writeTimeout(timeout, TimeUnit.SECONDS)
.build();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(BASE_API_URL)
.client(okHttpClient)
.addConverterFactory(GsonConverterFactory.create())
.build();
apiRequests = retrofit.create(ApiRequests.class);
在调试模式下,我看到baseUrl很好
但是调用时:
@GET("getCategories/{id}")
Call<Basic<CategoryData>> getCategories(@Path("id") int id);
请求失败,错误代码500
Log.d(TAG, "onResponse: getting Categproies ->" + response.toString());
说明:
onResponse: getting Categproies ->Response{protocol=http/1.1, code=500, message=Internal Server Error, url=http://example.com/getCategories}
/ web /发生了什么? 我检查了类似的问题like this one,但这不是我的问题,我也按照回答中的正确方法:(
那我该怎么办?