我有一个post api来获取一些细节。我正在传递像这样的参数
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
GitHubService github = retrofit.create(GitHubService.class);
Map<String, String> params;
Params.setAppContext(getApplicationContext());
params = Params.postCommuteParams(AppUtil.getAuthToken(MainActivity.this), android.os.Build.VERSION.RELEASE, "");
Log.d("retrofit param", ""+params.toString());
Call<CommuteResultVO> call1 = github.callCommute(params);
call1.enqueue(new Callback<CommuteResultVO>() {
@Override
public void onResponse(Response<CommuteResultVO> response, Retrofit retrofit) {
int statusCode = response.code();
CommuteResultVO user = response.body();
Log.d("retrofit", ""+statusCode+" );
}
@Override
public void onFailure(Throwable t) {
// Log error here since request failed
Log.d("retrofit", "failed");
}
});
}
改装参数的日志给出了所有参数。 Log.d(“retrofit param”,“”+ params.toString());
params正在工作,因为这个api调用完全与凌空一起工作。
这就是我在GitHubService类中编写post调用的方法
@FormUrlEncoded
@POST("/commutes/availability?")
Call<CommuteResultVO> callCommute(@FieldMap Map<String, String> parameters);
但我在回复中获得了404的statusCode