API

[API] 포스트맨 사용 해보기

AlexHouse 2022. 5. 25. 07:55
728x90

API를 사용해보도록하자. 내가 얻을수 없는 데이터에 대한 

 

정보에 대해서 도움을 받을 때 간혹 우리는 API 데이터가 필요하다

 

그것을 쉽게 사용할 수 있도록 도와주는 것이 바로 포스트맨이다.

 

이를 REST 라고 부르기도 한다.

 

 


 

 

 

 

MemberList 뽑아보기

 

 

 

우선, Postman에서 해당링크로 send를 하엿을 경우 다음과 같은

 

데이터가 나오는것을 볼 수 가 있다.

 

 

	// 포스트맨 test 
		@RequestMapping(value = "/test/memberViewer")
		public String memberViewer(Model model) throws Exception {

			// api 호출해서 값을 가져온다 
			String apiUrl = "http://localhost:8080/rest/member";
			
			URL url = new URL(apiUrl);
			HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
			httpURLConnection.setRequestMethod("GET");
			// model 객체를 이용하여 jsp로 데이터를 넘겨준다.

			BufferedReader bufferedReader;
			if(httpURLConnection.getResponseCode() >= 200 && httpURLConnection.getResponseCode() <= 300) {
				bufferedReader =new BufferedReader(new InputStreamReader(httpURLConnection.getInputStream()));
			} else {
				bufferedReader = new BufferedReader(new InputStreamReader(httpURLConnection.getErrorStream()));
			}
			
			StringBuilder stringBuilder = new StringBuilder();
			String line;
			while((line = bufferedReader.readLine()) != null ) {
				System.out.println("line: " + line);
				stringBuilder.append(line);
			}

			bufferedReader.close();
			httpURLConnection.disconnect();
			
			ObjectMapper objectMapper = new ObjectMapper();
			List<Member> memberList = objectMapper.readValue(stringBuilder.toString(), new TypeReference<List<Member>>() {});
			
			model.addAttribute("list", memberList);
			 
			return "test/memberViewer";
		}

 

 

 

 

다음 처럼 작성을 하고,

 

서버를 키고, 해당 URL을 입력하게되면

 

 

 

 

 

 

다음과 같은 내가 갖고있는 데이터를 토대로

 

데이터가 그대로 출력이 되게된다.

 

 

 

selectOne도 마찬가지로

 

 

 

 

 

 

 

 

 

 

 

 

다음과 같이 작성하면

 

2번에 해당한 시퀀스 데이터를 불러오게된다.

 

 

 

 

 

 

// 포스트맨 test 
	@RequestMapping(value = "/test/memberViews")
	public String memberViews(Model model) throws Exception {

		// api 호출해서 값을 가져온다 
		String apiUrl = "http://localhost:8080/rest/member/2";
		
		URL url = new URL(apiUrl);
		HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
		httpURLConnection.setRequestMethod("GET");
		// model 객체를 이용하여 jsp로 데이터를 넘겨준다.

		BufferedReader bufferedReader;
		if(httpURLConnection.getResponseCode() >= 200 && httpURLConnection.getResponseCode() <= 300) {
			bufferedReader =new BufferedReader(new InputStreamReader(httpURLConnection.getInputStream()));
		} else {
			bufferedReader = new BufferedReader(new InputStreamReader(httpURLConnection.getErrorStream()));
		}
		
		StringBuilder stringBuilder = new StringBuilder();
		String line;
		while((line = bufferedReader.readLine()) != null ) {
			System.out.println("line: " + line);
			stringBuilder.append(line);
		}

		bufferedReader.close();
		httpURLConnection.disconnect();
		System.out.println("final line" + stringBuilder.append(line));
		
		ObjectMapper objectMapper = new ObjectMapper();
		Member member = objectMapper.readValue(stringBuilder.toString(), Member.class);
		
		model.addAttribute("item", member);
		 
		return "test/memberViews";
	}

 

 

 

 

가장 신경써서 봐야할 부분은

 

이부분이다.

 

 

 

 

다음과같이 주소를 입력 햇을경우, 

 

화면이 뜨지만,

 

 

 

 

 

로그를 보면 해당 데이터가 나오는 것을 확인 해 볼 수 있다.

 

 

 

 

 


 

 

 

To be continue..

728x90

'API' 카테고리의 다른 글

[API] Daum 우편번호 API 사용 및 적용  (0) 2022.06.15