반응형

java로 https 통신 연결하기 / java로 api 호출하기 / java post http 

//파라미터 담기
String strParam = "param1=apple&param2=banana&param3=grape";

// 요청 URL
reqUrl = "https://www.test.com/api1/api1_2";

//결과값 담을 변수
String returnStr 	   = "";

HttpsURLConnection con = null;

try {
 	URL url = new URL(reqUrl);
          
	StringBuffer buf = new StringBuffer();

	con = (HttpsURLConnection)url.openConnection();
    
	//http method 설정
	con.setRequestMethod("POST");
    
	//서버통신 timeout 설정 (30초)
	con.setConnectTimeout(30000);
    
	//스트림읽기 timeout 설정 (30초)
	con.setReadTimeout(30000);
    
	//헤더설정
	con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
	con.setRequestProperty("Authorization", "sdfsdfsdfsdf");

	//OutputStream으로 POST 데이터 전달 옵션
	con.setDoOutput(true);

	//연결
	con.connect();

	// 송신할 데이터 전송.
	DataOutputStream dos = new DataOutputStream(con.getOutputStream());
	dos.writeBytes(strParam);
	dos.flush();
	dos.close();
    
	//응답 읽기
	StringBuilder response = new StringBuilder();
	BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(con.getInputStream()));
	
	String line;
	while ((line = bufferedReader.readLine()) != null) {
		response.append(line);
	}
	bufferedReader.close();
	returnStr = response.toString();
    
} catch (Exception e) {
		e.printStackTrace();
} finally {
		//연결종료
		if (con != null) con.disconnect();
}
반응형

+ Recent posts