Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android必知必會-使用okhttp的PUT方式上傳文件

Android必知必會-使用okhttp的PUT方式上傳文件

編輯:關於android開發

Android必知必會-使用okhttp的PUT方式上傳文件


背景

公司的文件上傳接口使用PUT協議,之前一直用的都是老項目中的上傳類,現在項目中使用了okhttp網絡庫,就查了下資料,在這裡分享一下。

代碼實現

    /**
     * @param mediaType MediaType
     * @param uploadUrl put請求地址
     * @param localPath 本地文件路徑
     * @return 響應的結果 和 HTTP status code
     * @throws IOException
     */
    public String put(MediaType mediaType, String uploadUrl, String localPath) throws IOException {
        File file = new File(localPath);
        RequestBody body = RequestBody.create(mediaType, file);
        Request request = new Request.Builder()
                .url(uploadUrl)
                .put(body)
                .build();
        Response response = client.newCall(request).execute();
        return response.code()+ ":" + response.body().string() ;
    }

    //上傳JPG圖片
    public String putImg(String uploadUrl, String localPath) throws IOException {
        MediaType Image = MediaType.parse("image/jpeg; charset=utf-8");
        return put(Image, uploadUrl, localPath);
    }

可能還需要進行的設置:修改各種Timeout

OkHttpClient client = new OkHttpClient();
client.setConnectTimeout(30, TimeUnit.SECONDS);
client.setReadTimeout(15, TimeUnit.SECONDS);
client.setWriteTimeout(30, TimeUnit.SECONDS);

PS:以上代碼基於okhttp-2.7.2,其他版本未測試,理論上是通用的。

總結

以上是最基本的代碼實現,你還可以加上自己的各種監聽。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved