У меня странная проблема. Я нахожусь в процессе разработки приложения, и все мои запросы работают нормально, но последние три не работали без причины !!Я искал, что может вызвать эту проблему, но я ничего не понимал ... хотя в Почтальоне запрос просто отлично работает !!
вот моя функция запроса:
@FormUrlEncoded
@POST("addContractBenefit")
Call<ResponseBody> addContractBenefit( @Header("Accept") String Accept,
@Header("Authorization") String token,
@Field ("contract_id") int contract_id ,
@Field ("contract_benefit") String contract_benefit
);
и вот мой вызов повторного набора:
Call<ResponseBody> responseBodyCall = service.addContractBenefit("application/json","Bearer "+prefManager.getAPIToken() , contract_id , b.contractBenefit.getText().toString() );
responseBodyCall.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
mDialog.dismiss();
String jsonStr = null;
try {
jsonStr = response.body().string();
Log.d("response" , jsonStr);
} catch (IOException e) {
e.printStackTrace();
}
JSONObject json = null;
try {
json = new JSONObject(jsonStr);
JSONObject statesResponses = json.optJSONObject("states");
boolean success = statesResponses.getBoolean("success");
if(success){
Toast.makeText(getContext(), getString(R.string.added_successefuly), Toast.LENGTH_LONG).show();
benefitAdapter.notifyDataSetInvalidated();
b.contractBenefits.invalidateViews();
}
}
catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.d("failure", t.getMessage());
mDialog.dismiss();
}});
и RetrofitClientInstance
public static Retrofit getRetrofitInstance() {
if (retrofit == null) {
retrofit = new retrofit2.Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
}
return retrofit;
}
всемои другие запросы работают нормально, но я не знаю, что вызвало ошибку в этом запросе!