Okhttp 3.0上傳資料與PUT請求
阿新 • • 發佈:2019-02-07
String url = url.replace(":userId", LeanchatUser.getCurrentUserId());
//初始化設定 /* OkHttpClient client = new OkHttpClient.Builder() .connectTimeout(6000, TimeUnit.SECONDS) .readTimeout(2000, TimeUnit.SECONDS) .writeTimeout(6000, TimeUnit.SECONDS).build();*/ OkHttpClient client = newOkHttpClient(); FormBody body = new FormBody.Builder() .add("communityId", communityId) .build(); Request request = new Request.Builder() .url(url) .put(body) .build(); client.newCall(request).enqueue(new Callback() { @Overridepublic void onFailure(Call call, IOException e) { ToastUtil.show(SelfInfoSetting.this,"連結超時,請重試!"); } @Override public void onResponse(Call call, Response response) throws IOException { String result = response.body().string(); } });
新增引數:
FormBody body = newFormBody.Builder() .add("communityId", communityId) .build();
回撥結果得到JSON字串:
String result = response.body().string();
集中常用的MediaType:
MediaType Image = MediaType.parse("image/jpeg; charset=utf-8");
MediaType MEDIA_TYPE_TEXT = MediaType.parse("text; charset=utf-8");
MediaType JSON = MediaType.parse("application/json; charset=utf-8");
常見的媒體格式型別如下: text/html : HTML格式 text/plain :純文字格式 text/xml : XML格式 image/gif :gif圖片格式 image/jpeg :jpg圖片格式 image/png:png圖片格式 以application開頭的媒體格式型別: application/xhtml+xml :XHTML格式 application/xml : XML資料格式 application/atom+xml :Atom XML聚合格式 application/json : JSON資料格式 application/pdf :pdf格式 application/msword : Word文件格式 application/octet-stream : 二進位制流資料(如常見的檔案下載) application/x-www-form-urlencoded : <form encType=””>中預設的encType,form表單資料被編碼為key/value格式傳送到伺服器(表單預設的提交資料的格式) 另外一種常見的媒體格式是上傳檔案之時使用的: multipart/form-data : 需要在表單中進行檔案上傳時,就需要使用該格式 以上就是我們在日常的開發中,經常會用到的若干content-type的內容格式。