반응형 Archive188 [22] Restful API 에 대해서 API Apllication Programming Interface 의 약자입니다. 하지만 단순히 Apllication 뿐만 아니라, 사용자들이 사용할수있는 interface, 함수들을 포함하는 의미입니다. 서버입장에서 API란, 클라이언트들이 사용하는 URL을 뜻한다고 할 수 있습니다. Restful Rest의 성격이 가득하다 라는 의미입니다 Rest Representational State Transfer 의 약자입니다. "무언가를 대표하는,나타내는 상태를 전송한다" 라는 의미입니다 즉, 실제로 어떤 resource 에대한 상태를 전송하는 것입니다. Restful System의 6가지 요소 1. Client-Server architecture 서버는 클라이언트가 브라우저뿐만 아니라 다양한 어플리케이션.. 2022. 4. 3. [21] JSON 통신 body 우리가 데이터를 주고받을 때는 string데이터 타입을 사용합니다. 단순히 문자열이면 제한사항이 많겠죠 그래서 등장한 것이 JSON 타입입니다. 형태는 string이지만 [], {}, (),"" 등의 기호들로 구분을하여 데이터를 전송하고, 받을 때 parsing하여 다양한 형태의 자료형를 전달할 수 있습니다. JSON에 대한 자세한설명은 생략하도록 하겠습니다. 이전까지 작성한 http 서버에서는 단순히 html파일만을 전달했습니다. 이는 브라우저 클라이언트만 사용이 가능한 형태이죠 만약 다른 디바이스, 앱이나, 다른 서버에서 데이터를 요청한다면 html말고 json의 형태로 제공해주면 좋겠죠? http요청에서 url에 담기 애매하거나, 그러지 못하는 것들을 body에 담아서 보내곤 합니다. 순수.. 2022. 4. 3. [20] node의 http모듈을 사용해서 서버 만들어보기 기본골격 const http = require("http"); const server = http.createServer((req, res) => { console.log("incoming..."); console.log(req.headers); console.log(req.httpVersion); console.log(req.method); console.log(req.url); res.write("welcome!"); res.end(); }); server.listen(8080); html 파일을 읽어서 전송 const http = require("http"); const fs = require("fs"); const server = http.createServer((req, res) => { con.. 2022. 4. 3. [19] Header Stateless Protocol http통신에서 요청은 상태를 가지고 있지 않습니다. 즉, 요청에대한 순서가 상관이없고, 서로 관련도 없어야 합니다. 그럼 이런 상태가 없는 요청을 통해서, 어떻게 로그인과같은 상태를 알수있을까요? Cookies & Sessions 로그인을 할때, 성공적으로 반환한다면, 서버에서는 header에 검증된 사용자를 식별할 수 있는 token을 response에 담아서 반환합니다. (브라우저의경우) 응답을 받으면 header에 들어있는 cookie에 저장할 정보를 자동으로 브라우저의 cookie에 저장합니다. 이후에는, 클라이언트가 요청할때마다 cookie에있는 token을 request의 header에 담아서 요청합니다. 그러면, 서버에서 검증한 token이기때문에, 로그인.. 2022. 4. 3. [18] Request Request의 구성 URL ? Uniform Resource Locator 의 약자입니다. 리소스가 어디에 있는지, 고유한 값을 나타냅니다. 그림과 같이 해석할 수 있습니다. 대표적 Method 종류 일반적인 status코드 응답방식 GET 200 : 데이터를 반환할때 401 : 권한이 없을때 403 : 특정한 권한이 없을때(admin) 404 : 요청을 잘못 했을때 405 : 해당 method를 지원하지 않을때 POST 201 : created 생성 401 : 권한이 없을때 403 : 특정한 권한이 없을때(admin) 404 : 요청을 잘못 했을때 409 : conflict, 만들고자 하는 리소스가 이미 있어서 충돌이 날때 PUI, DELETE, PATCH 200 : OK 204 : 성공적인 삭제를 .. 2022. 4. 3. [17] status code status 코드 종류 자주 쓰이는 코드 정리 CODE 의미 100 계속 요청 하라 102 처리 중 200 OK 201 요청에 대한 생성처리 완료 204 요청 처리 완료, 반환할 content는 없음 301 요청에 대해서 영구적으로 다른 URL로 이동됬다를 알림 302 요청에 대해서 임시적으로 다른 URL로 변경되었다 를 알림 303 302와 동일한데, GET요청에만 사용가능 307 요청의 mothod와 같은 mothod에 대해서만 다른 URL로 변경됨을 알림(임시적으로만) 308 307과 같고, 영구적으로 변경됬음을 알림 400 클라이언트의 요청에 문제가 있음을 알림 401 권한이 없음을 알림(ex 로그인하지않았을때) 403 로그인은 했으나, 권한이 없는사람일때 (ex admin이 아닐때) Forbi.. 2022. 4. 3. 이전 1 ··· 16 17 18 19 20 21 22 ··· 32 다음 반응형