목록API (9)
나의 개발 일상 기록
GraphQL Union과 Interface 1. GraphQL Union GraphQL 유형 시스템은 공용 구조체입니다. 공용 구조체는 필드의 공통 필드 집합을 정의하지 않는다는 점을 제외하면 인터페이스와 동일합니다. 가능한 형식이 논리적 계층 구조를 공유하지 않는 경우 공용 구조체는 일반적으로 인터페이스보다 우선합니다. * Union은 타입 여럿을 한 배열에 반환하고자 할때 사용합니다. GraphQL Union 사용 예시 const { gql } = require('apollo-server') const dbWorks = require('../dbWorks.js') const typeDefs = gql` union Given = Equipment | Supply // Equipment 및 Supply..
GraphQL의 기본 타입 1. 스칼라 타입 GraphQL 내장 자료형 type EquipmentAdv { id: ID! used_by: String! count: Int! use_rate: Float is_new: Boolean! } 타입 설명 ID 기본적으로는 String이나, 고유 식별자 역할임을 나타냄 String UTF-8 문자열 Int 부호가 있는 32비트 정수 Float 부호가 있는 부동소수점 값 Boolean 참/거짓 * ! : Non Null => null을 반환할 수 없음을 뜻합니다. 2. 열거 타입 미리 지정된 값들 중에서만 반환합니다. const typeDefs = gql` enum Role { developer designer planner } enum NewOrUsed { new..
GraphQL Query & Mutation 1. GraphQL Query 기본적인 schema와 resolver를 구현하고, query들로 정보를 요청합니다. Query 루트 타입 type Query { teams: [Team] } 자료요청에 사용될 query들을 정의하며 query 명령문마다 반환될 데이터 형티를 지정 해줍니다. 위의 예시에서 teams는 Type에 명시에 된 Team의 데이터들을 배열형식처럼 담을 수 있습니다. Type type Team { id: Int manager: String office: String extension_number: String mascot: String cleaning_duty: String project: String } 반환될 데이터의 형태를 지정해주며..
GraphQL 서버 구축 프로젝트를 생성하기 전 Node.js, VS Code를 설치하셔야 합니다. 프로젝트 생성 1. 자신이 원하는 경로에 폴더 생성 후 VS Code에서 오픈합니다. Ctrl + `로 터미널 창을 연 후 npm init을 사용하여 Node.js 프로젝트를 생성합니다. 2. npm init 명령어가 끝나면 package.json이 생성됩니다. 3. index.js 파일 생성 후 console.log('프로젝트 생성 완료')를 입력합니다. 터미널에서 node index.js를 입력 시 index.js에 입력한 내용이 표시됩니다. nodemon index.js(명령어가 안될 시 npx nodemon index.js) 명령어 실행 시 Node.js프로젝트가 실행이 됩니다. 4. package..
GraphQL & Apllo 1. GraphQL란? 서비스를 구성하는 소프트웨어들간에는 수없이 많은 데이터가 오고가며 소통이 이뤄집니다. GraphQL은 그동안 널린 사용되던 Rest API와는 다른 방식의 정보교환입니다. 서비스의 특성에 따라, 보다효율적이고 간편하고도 강력한 방식으로 프론트엔드와 백엔드, 서버와 모바일 앱 등 요소들간의 소통을 구현할 수 있게 됩니다. Rest API 한계로는 필요한 정보들만 받아올 수는 없을까?, 필요한 정보들을 요청 한 번에 받아올 수는 없을까? 와 같은 문제들이 있었습니다. 그러한 한계를 보안하기 위해서 GraphQL이 나왔다고 할 수 있습니다. 2. GraphQL 사용예시 GraphQL의 쿼리와 뮤테이션을 사용하여, 다양한 형태로 정보를 요청하고 입력, 변경하는..
카카오 지도 OPEN API 1. APP Key 발급 우측 상단에 APP KEY 발급 버튼을 클릭하여 KEY 발급 페이지로 이동합니다. 2. 애플리케이션 추가 정보들을 입력하여 애플리케이션을 생성합니다. 3. Key 발급 정보 확인 key에 대한 정보를 확인합니다. 4. 플랫폼 등록 내 애플리케이션 > 앱 설정 > 플랫폼 다음과 같이 플랫폼을 등록 해줍니다. 5. 코드 구현 생각보다 간단한 코드로 카카오 맵을 불러 올 수 있었습니다. 6. 그 외의 기능들 https://apis.map.kakao.com/web/sample/ 위의 URL에 접속하여 Map에 대한 다양한 기능들을 볼 수가 있습니다.
NAVER 영화 검색 OPEN API 1. OPEN API 신청 위의 오픈 API 이용신청 버튼 클릭 시 애플리케이션 등록 과정을 진행을 합니다. 2. 애플리케이션 정보 취득 애플리케이션 등록 과정을 마치면 Client ID 및 Client Secret가 발급이 됩니다. 3. Postman을 이용한 OPEN API 테스트 Postman으로 발급받은 정보를 Headers에 입력 후 Send 버튼 클릭 시 데이터를 전송 받을 수 있습니다. 4. MoviesInfoController.java 4-1. @Controller - 프리젠테이션 레이어, 웹 어플리케이션에서 웹 요청과 응답을 처리하는 어노테이션입니다. - API와 View 리턴을 동시에 사용하는 경우에 사용합니다. 4-2. @Autowired - 각 ..
1. API 란? API는 어떤 서버의 특정한 부분에 접속해서 그 안에 있는 데이터와 서비스를 이용할 수 있게 해주는 소프트웨어 도구입니다. API를 이용하면 두 개의 소프트웨어가 서로 통신을 주고받을 수 있으며, 이는 우리가 모바일을 이용해서 하는 모든 행동들의 기반을 이루고 있다고 할 수 있습니다. API의 가장 대표적인 방식은 SOAP와 REST가 흔히 비교됩니다. 2. REST API * REST(Representational State Transfer)는 네트워크를 통해서 컴퓨터들끼리 통신할 수 있게 해주는 아키텍처 스타일입니다. * REST API는 인터넷 식별자(URI)와 HTTP 프로토콜을 기반으로 합니다. REST는 HTTP 프로토콜 덕분에 '단순함'이 핵심이라고 할 수 있습니다. * 데..
1. XML(eXtebsible Markup Language) * XML은 데이터를 표현하기 위하여 많이 사용되어 온 방식으로 HTML과 흡사한 구조를 가지고 있습니다. XML이 가지는 고유한 문법이 있다는 점에서 소프트웨어 및 하드웨어에 대하여 독립적으로 데이터를 처리할 수 있습니다. XML의 특징은 꺽쇠 입니다. XML은 트리 계층 구조를 가지고 있습니다. 홍길동 95 Soccer Ninza 이순신 100 Sing Dancing 나동빈 97 Coding Hiding 2. JSON(JavaScript Object Notation) * JSON 또한 XML과 비슷하게 데이터를 처리하기 위한 형식입니다. 일반적으로 서버와의 통신 규약인 REST API를 사용할 때 가장 많이 사용되어, 최근에는 XML보다는..