HttpClient 간편 사용

2803 단어 일 하 다
작업 중 에 https 서버 에 요청 을 보 내 는 데 HttpClient 를 사용 합 니 다.auth - token 과 csv 파일 을 가지 고 있 습 니 다.이제 작은 매듭 을 짓 겠 습 니 다.
버 전 4. x. x
  • httpcore: HTTP 프로 토 콜 의 기본 패키지 구성 요소 입 니 다.
  • httpclient: httpcore 기반 HTTP 클 라 이언 트 구현.
  • httpmime: 모든 MIME 유형 을 포함 하여 해석 하기 편리 합 니 다.

  • MAVEN 의존
    
    
        org.apache.httpcomponents
        httpcore
        4.x
    
    
    
    
        org.apache.httpcomponents
        httpclient
        4.x
    
    
    
    
        org.apache.httpcomponents
        httpmime
        4.x
    

    이루어지다
    CloseableHttpClient httpClient = HttpClients.createDefault();
    this.localfilename = "E:\\CSVDir\\" + localFile;
    serverDirectory = "/" + userName +"/";
    
    try {
        HttpPost httpPost = new HttpPost(server);
    
    //    String redisKey = "ftp.dicostapartners.com$Hrz8";
    //    userToken = uploadRedisDao.getUserToken(redisKey);
    
    //    // string  JSONObject
    //    JSONObject token = JSONObject.parseObject(userToken);
    //    String tok = token.getString("Authorization");
    
        //      
        httpPost.addHeader("Authorization", tok);
    
        //   form data
        StringBody request = new StringBody("upload", ContentType.TEXT_PLAIN);
        StringBody targetdirectory = new StringBody(serverDirectory, ContentType.TEXT_PLAIN);
        FileBody upload = new FileBody(new File(this.localfilename));
    
        HttpEntity reqEntity = MultipartEntityBuilder.create().addPart("request", request)
                .addPart("targetdirectory", targetdirectory).addPart("upload", upload).build();
        httpPost.setEntity(reqEntity);
    
        // httpClient    post  ,         
        CloseableHttpResponse httpResponse = httpClient.execute(httpPost);
        //             
        HttpEntity resEntity = httpResponse.getEntity();
        logger.info(EntityUtils.toString(resEntity));
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            //     
            if (null != httpResponse) {
                httpResponse.close();
            }
            if (null != httpClient) {
                httpClient.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    인터넷 상에 서 좋 은 httpclient 시 리 즈 를 참고 할 수 있 습 니 다.https://www.cnblogs.com/myitnews/p/12194948.html

    좋은 웹페이지 즐겨찾기