1. 程式人生 > >Retrofit提交Json

Retrofit提交Json

try response 接口類 manager image catch parse app resp

1、APIService為自定義接口類,
技術分享圖片

定義@Headers

@Headers({"Content-Type: application/json","Accept: application/json"})
@POST
Call<ResponseBody> Test(@Url String url,@Body RequestBody route);//測試使用@Url

2、調用代碼如下,使用了Call<ResponseBody>,


 APIService req;
 req = RetrofitManager.getInstance().createReq(APIService.class);
 HashMap hashMap = new HashMap();
 Retrofit retrofit=new Retrofit.Builder()
     .baseUrl(AppConfig.BASE_URL)
     .build();
 APIService postRoute=retrofit.create(APIService.class);
 RequestBody body=RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"),datas);//datas是json字符串
 Call<ResponseBody> call=postRoute.Test("/test.shtml?type=test",body);
 call.enqueue(new Callback<ResponseBody>() {
 @Override
 public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
 try {
      String json = response.body().string();
      JSONObject jObject1 = new JSONObject(json);
      String result = jObject1.getString("result");
      String message = jObject1.getString("message");
      if (!result.equals("0"))//不為0異常
      {
           showToast("異常:"+message);
      }
      else
      {
           showToast("成功:"+message);
      }
     }
     catch (Exception ex)
     {

     }
          

Retrofit提交Json