[스프링부트] 26. 외부 API 사용

문정준's avatar
Apr 22, 2025
[스프링부트] 26. 외부 API 사용

1. 쿨SMS API

  • 로그인(회원가입) 후 API 개발문서로 진입
notion image
 
  • API Key 관리 클릭 → API 키 생성
notion image
notion image
 
  • 허용할 IP 선택
    • 예제이므로 모든 IP 허용 선택
notion image
 
  • 인증 성공 시 (API Key가 같으면) : response 확인 가능
notion image
 
  • 인증 실패 시 : 에러 메시지 응답
notion image
 
  • API 사용 시
//package solapi; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; public class Request { public static void main(String[] args) throws Exception { String targetUrl = "http://192.168.0.99:8080/messages/v4/send"; String body = """ { "message": { "to": "01055558888", "from": "01022223333", "text": "문자메시지 내용" } } """; URL url = new URL(targetUrl); HttpURLConnection con = (HttpURLConnection) url.openConnection(); con.setRequestMethod("POST"); con.setRequestProperty("Authorization", "12345"); con.setRequestProperty("Content-Type", "application/json"); con.setDoOutput(true); BufferedWriter br = new BufferedWriter(new OutputStreamWriter(con.getOutputStream())); br.write(body + "\n"); br.flush(); br.close(); int responseCode = con.getResponseCode(); BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String line; StringBuffer response = new StringBuffer(); while ((line = in.readLine()) != null) { response.append(line); } in.close(); System.out.println("HTTP response code : " + responseCode); System.out.println("HTTP body : " + response.toString()); } }
 
  • SDK 사용 시
import net.nurigo.sdk.NurigoApp; import net.nurigo.sdk.message.model.Message; import net.nurigo.sdk.message.request.SingleMessageSendingRequest; import net.nurigo.sdk.message.response.SingleMessageSentResponse; import net.nurigo.sdk.message.service.DefaultMessageService; public class MyApp { public static void main(String[] args) { DefaultMessageService messageService = NurigoApp.INSTANCE.initialize("API Key", "API Secret Key", "https://api.coolsms.co.kr"); Message message = new Message(); // 발신번호 및 수신번호는 반드시 01012345678 형태로 입력되어야 합니다. message.setFrom("내 전화번호"); message.setTo("보낼 번호"); message.setText("문자 내용"); SingleMessageSendingRequest body = new SingleMessageSendingRequest(message); SingleMessageSentResponse responseBody = messageService.sendOne(body); System.out.println(responseBody); } }
 
 
Share article

sxias