1. 程式人生 > >Okhttp 3.0上傳資料與PUT請求

Okhttp 3.0上傳資料與PUT請求

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 = new 
OkHttpClient(); 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() { @Override
public 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 = new 
FormBody.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的內容格式。