HTTPclient 4.2.2 傳參數和文件流


package com.http;

import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.junit.Test;

public class HttpClientUtil {

    @Test
    public void testHttp() {
        //創建HttpClient對象
        HttpClient client = new DefaultHttpClient();
        //構建POST請求   請求地址請更換為自己的。
        //1)
        HttpPost post = new HttpPost("XX");
       File file=new File("C:\\Users\\admin\\Desktop\\xidada.jpg");
        FileBody fileBody=new FileBody(file);
        try {
            StringBody name = new StringBody("xidada.jpg");
            MultipartEntity reqEntity = new MultipartEntity();
            StringBody bucketId = new StringBody("402880bd66a545e90166a545f3700000");
            reqEntity.addPart("bucketId", bucketId);//對應接口端的參數名稱
            reqEntity.addPart("name", name);
            reqEntity.addPart("file", fileBody);//file1為請求后台的File upload;屬性  
            post.setEntity(reqEntity);
            HttpResponse response = client.execute(post);
            int statusCode = response.getStatusLine().getStatusCode();
            if(statusCode == HttpStatus.SC_OK){
                
                System.out.println("服務器正常響應.....");
                
                HttpEntity resEntity = response.getEntity();
                
                
                System.out.println(EntityUtils.toString(resEntity));//httpclient自帶的工具類讀取返回數據                
                System.out.println(resEntity.getContent());    
                EntityUtils.consume(resEntity);    
        }
        }catch (UnsupportedEncodingException e) {
            
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            
            e.printStackTrace();
        } catch (IOException e) {
            
            e.printStackTrace();
        }
       
    }
}

 

httpclient-4.2.2.jar
httpcore-4.2.2.jar
httpmime-4.2.2.jar


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM