Rest API vs GraphQL API Rest API 캐시가 지원 HTTP 캐싱을 사용하여 응답을 저장,캐시를 지울땐 수동적으로 해야한다. 이미 정보가 정해져 있어서 추가적으로 정보가 필요하면 서버쪽에서 만들어줘야한다. GraphQL 캐시 지원 X ,아폴로와 같은 라이브러리를 사용 클라이언트단에서 추가적으로 정보 수정을 하면 된다. github에서 토큰을 받아오기 보안을 위해서 env를 전역파일로 저장한다. REACT_APP_GITHUB_TOKEN = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx App.js import "./App.css"; import { graphql } from "@octokit/graphql"; import { useEffect, useState } from..
GraphQL(Graph + Query Language) Facebook에서 처음으로 개발했고, 오픈 소스로 제공된 쿼리 언어 API를 위한 쿼리 언어 GraphQL은 클라이언트 요청에 따라 유연하게 트리 구조의 JSON 데이터를 응답으로 전송 클라이언트 요청에 따라 유연하게 자원을 가져올 수 있다는 점 그래프에서 트리 추출하는 방법 쿼리 실행 이방식으로 서버에 요청을 보낸다. query { 책(ISBN이 "9780674430006") { 책 이름 저자 { 이름 } } } 요청 해결 후 돌아온 쿼리 { 책 : { 책 이름 : "GraphQL", 저자 : [ { 이름 : "김코딩"}, { 이름 : "박해커"}, ] } } GraphQL은 HTTP를 통해 API 서버로 요청을 보내고 응답을 받는다. 응답을 ..
const powerSet = function (str) { // 정렬 const sorted = str.split('').sort(); //각자 문자로 분리하여 알파벳 정렬 후 배열에 저장한다. // 중복 제거 const deduplicated = sorted.reduce((acc, item) => { //첫번째는 이전까지의 계산 결과를 누적하는 변수 //두번째는 배열의 요소 하나 if (acc[acc.length - 1] === item) { return acc; } else { return acc.concat(item); } }); let subSets = []; const pickOrNot = (idx, subset) => { // base case if (idx === deduplicated.l..