加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

利用 HttpClient 上传文件

发布时间:2020-05-25 16:02:23 所属栏目:Java 来源:互联网
导读:利用 HttpClient 上传文件

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

最近的工作需要把从网络上抓取的图片批量上传到服务器,文件上传用的是Apache HttpClient 4.3,记录一下以便以后查阅!
    /** 
     * Example how to use multipart/form encoded POST request. 
     */  
    public class ClientMultipartFormPost {  
      
        public static void main(String[] args) throws Exception {  
            if (args.length != 1)  {  
                System.out.println("File path not given");  
                System.exit(1);  
            }  
            CloseableHttpClient httpclient = HttpClients.createDefault();  
            try {  
                HttpPost httppost = new HttpPost("http://localhost:8080" +  
                        "/servlets-examples/servlet/RequestInfoExample");  
      
                FileBody img = new FileBody(new File(args[0]));  
                StringBody filename = new StringBody("A binary file of some kind",ContentType.TEXT_PLAIN);  
                StringBody comment = new StringBody("A binary file of some kind",ContentType.TEXT_PLAIN);  
      
                HttpEntity reqEntity = MultipartEntityBuilder.create()  
                        .addPart("img",img)  
                        .addPart("filename",filename)  
                        .addPart("comment",comment)  
                        .build();  
      
      
                httppost.setEntity(reqEntity);  
      
                System.out.println("executing request " + httppost.getRequestLine());  
                CloseableHttpResponse response = httpclient.execute(httppost);  
                try {  
                    System.out.println("----------------------------------------");  
                    System.out.println(response.getStatusLine());  
                    HttpEntity resEntity = response.getEntity();  
                    if (resEntity != null) {  
                        System.out.println("Response content length: " + resEntity.getContentLength());  
                    }  
                    EntityUtils.consume(resEntity);  
                } finally {  
                    response.close();  
                }  
            } finally {  
                httpclient.close();  
            }  
        }  
      
    }  

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读