1.GraphQL이란?페이스북이 2012년에 개발하고 2015년에 오픈소스로 공개한 API 쿼리 언어 및 런타임 환경입니다.클라이언트가 원하는 데이터를 정확하게 요청할 수 있도록 설계되었습니다. 2.GraphQL 특징2-1.유연한 데이터 요청GraphQL은 클라이언트가 필요한 데이터만 선택적으로 요청할 수 있어 과도한 데이터 전송을 줄일 수 있습니다.REST API의 경우 서버에서 정의한 엔드포인트가 정해진 데이터 형식을 반환합니다. 이때 클라이언트는 불필요한 데이터를 포함한 응답을 받을 수 있습니다. 2-2.단일 엔드포인트엔드포인트는 클라이언트와 서버 간의 통신에서, 클라이언트가 서버에 요청을 보내기 위해 사용하는 URL 또는 URI를 의미합니다. GraphQL은 하나의 엔드포인트로 모든 요청을 처..
Computer Science/Server&Network
1.JSONPlaceholderJSONPlaceholder는 주로 테스트와 프로토타이핑을 위해 제공되는 무료 온라인 REST API 서비스입니다. 서버나 데이터베이스를 설정할 필요 없이 CRUD 작업(생성, 읽기, 수정, 삭제)을 테스트할 수 있는 가상의 데이터를 제공합니다. /posts/comments/albums/photos/todos/users 2.사용예시해당링크는 JSONPlaceholder의 /posts 엔드포인트입니다.https://jsonplaceholder.typicode.com/posts 다음은 posts의 id가 1인 요소를 GET하는 AJAX 코드입니다.function loadData() { // XMLHttpRequest 객체 생성 var xhr = new XMLHtt..
1.API 키 (API Key) API 개발자가 API에 대한 액세스를 제어하는 데 사용하는 영숫자 문자열API 키는 API 제공자가 특정 사용자나 애플리케이션을 식별하고, 그들이 요청하는 데이터나 서비스를 사용할 수 있는지 확인하는 데 사용됩니다. 2.API 키 목적2-1.인증사용자가 API에 접근할 권한이 있는지 확인할수있다. 2-2.사용량 추적어느 애플리케이션이 얼마나 많은 API 호출을 하는지 모니터링할 수 있다. 2-3.권한 부여특정 키에 따라 사용할 수 있는 기능이나 데이터에 대해 권한을 부여할 수 있다. 2-4.보안외부에서 API를 호출할 때, 해당 호출이 허가된 애플리케이션에서 온 것임을 확인하는 역할을 한다.(강력한 인증 메커니즘과 함께 사용된다. =>OAuth, HMA..
1.HTTP 캐시 헤더클라이언트와 서버 간의 캐싱 동작을 제어하기 위한 메커니즘헤더들은 HTTP 요청 및 응답 메시지의 일부로 사용되며, 리소스의 캐시 동작을 명시적으로 설정하거나 제어하는 데 사용 1-1. Cache-Control 헤더가장 중요하고 널리 사용되는 캐시 제어 헤더여러 가지 지시자(directive)를 포함할 수 있으며, 각 지시자는 캐시 동작을 정의한다. public: 응답을 공유 캐시에 저장(여러 사용자가 동일한 캐시된 응답을 공유)private: 응답을 개인 사용자 캐시에만 저장(브라우저와 같이 해당 응답을 받은 사용자만 캐시)no-cache: 클라이언트는 응답을 캐시할 수 있지만, 캐시된 리소스를 사용하기 전에 원 서버에 재검증(Validation)을 요청no-store: 리소스를..
1.캐시(Cache)데이터나 값을 미리 복사해 놓는 임시 장소를 뜻한다.캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간없이 더 빠른 속도로 데이터에 접근할 수 있다. 1-1.사용이유속도 향상: 캐시는 주 메모리나 디스크보다 접근 속도가 훨씬 빠르기 때문에, 자주 사용되는 데이터를 캐시에 저장함으로써 데이터 접근 시간을 줄일 수 있다.데이터 일관성 유지: 캐시는 데이터를 일시적으로 저장하여 중복 계산을 방지하고, 데이터 일관성을 유지하는 데 도움을 준다. 2.캐시 주로 사용하는곳2-1. 반복적 접근 최적화반복적인 데이터 접근을 빠르게 처리함으로써 전체 시스템 응답 시간이 줄어든다. 반복적으로 실행되는 명령어나 데이터를 캐시에 저장하여 성능을 크게 향상시킬 수 있다. 2-2. 변하지 않는 ..
1.호스팅(Hosting)개인과 단체가 월드 와이드 웹을 통하여 웹사이트를 제공하는 것을 뜻한다.호스팅은 인터넷 연결을 제공할 뿐만 아니라, 데이터 센터에서 소유한 서버의 전체 또는 일부 공간을 클라이언트가 이용할 수 있도록 임대해 주는 서비스를 가리킨다. 2.호스팅 종류2-1.웹호스팅호스팅 업체 서버중 일부공간만을 임대가격이 저렴하고 서버,인프라 구축불필요소규모웹사이트에서 주로 사용 2-2.서버 호스팅호스팅 업체의 물리 서버를 단독으로 임대 및 구매가격이 비싼대신 서버에 대한 직접적인 권한을 가지고 보안에유리DB가 많이 소요되고 보안이 중요한곳에 사용 2-3.클라우드호스팅 업체의 가성 서버를 단독으로 사용서버 확장/축소가 자유롭게 가능함접속자 규모가 유동적으로 늘었다 줄었다 하는 서비스에 유리..
쿼리스트링(Query String)URL 주소 뒤에 입력데이터를 함께 제공하는 방식데이터를 파라미터를 통해 url 주소로 전달한다. ? key=value같은 형식으로 쓰인다. 여러개인 경우 &로 구분ex) ?type=post .. .. ... 🎈참고자료https://reinvite.tistory.com/129https://velog.io/@rlawogks2468/%EC%BF%BC%EB%A6%AC%EC%8A%A4%ED%8A%B8%EB%A7%81Query-String%EC%9D%B4%EB%9E%80
HTTP Request(요청)HTTP는 클라이언트랑 서버간에 사용되는 프로토콜이다.HTTP Request(요청)메소드중 Get과 Post 방식이 주로 사용된다.웹의 form 속성으로 자주 사용된다.GET 메소드POST 메소드리소스 조회(요청)요청 데이터 처리, 생성(업데이트) 요청HTTP Request Message Body존재X쿼드스티링을 이용하여 전달HTTP Request Message Body존재캐시 O 브라우저 기록 O캐시 X브라우저 기록 X HTTP 응답 코드 200(ok)HTTP 응답 코드 201(created)idempotent Oidempotent X 🎈참고자료https://cherry-forest.tistory.com/26https://inpa.tistory.com/e..