240102 Naver Cloud Platform (NCP) 실습 - Postman을 활용한 API 사용법 with 네이버클라우드 AI 서비스 (CLOVA Speech Recognition(CSR), Papago Image Translation (Text))

GG_Cloud·2024년 1월 2일
0

오늘은 개념적으로만 인지하고 있던 API요청을 실제로 수행했다. 개발자들이 API를 디자인하고 빌드하고 테스트하고 반복하기 위한 API 플랫폼인 Postman 이라는 프로그램을 활용해 네이버클라우드 AI 서비스를 실습해봤다.

실습 내용 자체는 네이버 AI서비스들이지만, 'Postman을 활용해 API를 요청하고 확인하는 법' 이 메인이다.

Postman?

개발자들이 API를 디자인하고 빌드하고 테스트하고 반복하기 위한 API 플랫폼

https://www.postman.com/downloads/ <-공식 다운로드 링크.

설치 후, 실행하고 프로젝트를 생성한 후의 화면이다.

네이버 AI 서비스들은 Http를 통해 서버에 Post방식으로 통신하기 때문에 갈색 POST를 선택해준다. URL의 경우 네이버 서비스 사용가이드를 참조해 넣어준다. 위 스샷은 CSR서비스의 url이고, 각 서비스마다 api통신을 하는 url이 다르다.

https://guide.ncloud-docs.com/docs/naveropenapiv3-application
위 ncloud 가이드를 보고 콘솔상에서의 api통신을 위한 준비 (서비스 신청, id 및 secret key 발급 등) 을 하고
Params / Header / Body 부분을 채워넣어서 api통신을 할 것이다.

Params 부분. 파라미터값에는 Key값에 lang, Value값에 Kor 를 넣는다.

Header 부분. id와 key는 콘솔에서 AI서비스를 신청하는 과정에서 얻는다. 아래의 Content-Type은 application/octet-stream으로 고정된다. 네이버 서버측의 API가 이런식으로 요청받도록 설계되어 있음.

올바른 방식으로 파라미터와 헤더값을 넣어줬다면, 본격적으로 Body 부분에 우리가 실험해볼 음성파일을 넣을 차례이다.
Speech Recognition이므로 음성파일을 넣어줘야 한다.

사실 Body부분에 none / form-data / x-www / ... 등등은 바디부분에 넣어줄 파일의 형식으로 보이는데, 교안 상에서 다짜고짜 binary 형식의 파일을 바디에 넣으라고 했다. 다만 api설계 자체가 개발자 입장에서 정의한 클라이언트/서버간의 소통 방식이기 때문에 이렇게 '그냥 해' 하는 부분은 많을수밖에 없다고 본다.

Get or Post 와 같은 통신방식, URL, 파라미터, 헤더값, 바디 부분에 문제없이 들어갔다면 우측의 Send버튼을 눌렀을 때 몇초정도 대기하다가 API 통신 결과를 반환해준다.

내가 넣은 음성파일은 "뉴스" 로 들린다고 판단했나보다.


위 내용은 CSR api통신을 구축하며 남긴 기록이고, 밑의 Image Translation, CLOVA Sentiment 모두 비슷한 방식으로 했다.

앞으로 API를 만드는 일보다는 쓰거나 이해할 일이 많을텐데, API통신에 중요한

콘솔상에서의 api통신을 위한 준비 (서비스 신청, id 및 secret key 발급 등) / Params / Header / Body 부분

을 이해하고 Postman과 같은 api 플랫폼을 활용해 실제 api통신을 검증해볼 수 있을 것이다.

profile
클라우드

1개의 댓글

안녕하세요, 네이버 클라우드 플랫폼입니다.

네이버클라우드의 기술 콘텐츠 리워드 프로그램 '이달의 Nclouder(1월)' 도전자로 초대합니다 :)

네이버 클라우드 플랫폼 서비스와 관련된 모든 주제로 2/1(목) 23시까지 신청 가능합니다. (*1월 작성 콘텐츠 한정 신청 가능)

Ncloud 크레딧을 포함한 다양한 리워드가 준비되어 있으니 많은 관심 부탁드립니다!

답글 달기