티스토리

Namu Study
검색하기

블로그 홈

Namu Study

namu445.tistory.com/m

namu445 님의 블로그입니다.

구독자
1
방명록 방문하기

주요 글 목록

  • JWT(JSON Web Token) JWT를 사용하는 이유 JSON 객체 데이터를 안전하게 전송할 때 JWT는 데이터를 키로 서명해서 토큰을 생성한다. 사용자의 Authorization 헤더 정보로 인증과 정보 조회를 진행할 때 SWT(Simple Web Token), SAML(Security Assertion Marup Language Tokens)과 비교 SAML에 비해 사이즈가 작습니다. SWT는 대칭키를 이용한 서명만 가능합니다. JWT와 SAML은 공개키/비공개키를 이용한 인증이 가능합니다. JWT 구조 Header 일반적으로 헤더는 두 영역(토큰 타입, 암호화 알고리즘)을 포함합니다. 헤더는 Base64로 인코딩되어 JWT에 포함됩니다. Payload 페이로드에는 사용자가 작성한 데이터를 포함합니다. 페이로드는 Base 64로 .. 공감수 0 댓글수 0 2022. 3. 2.
  • Routing, Router?(express) Routing은 클라이언트의 요청 조건에 대응해 응답하는 방식을 결정하는 것 입니다. Router는 클라이언트의 요청을 쉽게 처리할 수 있게 도와주는 Express의 기본 기능입니다. app.js에서 routing을 바로 수행해도 되지만 router를 사용하면 기능별로 route를 쪼갤 수 있고 app.js의 코드가 길어지는 것을 방지할 수 있다. Router는 미들웨어 기반으로 구현된 객체이므로 미들웨어와 동일한 방식으로 작동됩니다. 사용방법 별도의 js파일 생성 미들웨어 사용과 유사한 형식으로 router 사용을 위한 코드작성 app.js에서 router를 사용할 수 있게 exports app.js에서 router코드를 받기 특정 경로를 통한 요청은 router를 이용해서 응답 공감수 0 댓글수 0 2022. 1. 21.
  • 미들웨어 웹 서버에서 클라이언트의 모든 요청에 대해 공통적인 처리를 하고싶을 때 사용합니다. (파이프 역할) 브라우저가 보낸 데이터를 쉽게 사용할 수 있게 변경하기 위해 사용합니다. (전처리, 에러 처리 역할 도 같이 수행) Apache, Nginx 같은 웹 서버에도 모듈이라는 매우 유사한 개념이 있습니다. 미들웨어의 기본 형태 app.use((req, res, next) => { // 필요한 코드 }); req: request HTTP Headers, Query Parameters, URL 등 브라우저가 서버로 보내는 정보들이 담겨 있습니다. res: response 어떤 HTTP Status Code로 응답 할지, 어떤 데이터 형식으로 응답 할지, 헤더는 어떤 값을 넣어 응답 할지 다양한 기능을 제공합니다. .. 공감수 0 댓글수 0 2022. 1. 21.
  • Express.js? Express.js란? Express.js는 node.js로 서버를 빠르고 간편하게 만들 수 있게 도와주는 웹 프레임워크 입니다. 터미널에서 express 설치하기 npm i express express를 이용한 간단한 app.js 서버 코드 const express = require("express"); const app = express(); const port = 3000; app.get('/', (req, res) => { res.send("Hello World"); }); app.listen(port, () => { console.log(port, "포트로 서버가 켜졌어요!") }); //실행은 powershell 터미널에서 node app.js Express 미들웨어: https://expre.. 공감수 0 댓글수 0 2022. 1. 21.
  • 웹 서버? 웹 서버란? 인터넷에서 HTTP를 이용한 클라이언트의 요청에 응답하는 컴퓨터 이메일, 웹 사이트 등 대부분의 인터넷을 이용한 서비스는 웹 서버를 통해 사용할 수 있습니다. 웹 서버의 기본 동작 원리 브라우저를 통해 HTTP request로 웹사이트를 웹서버에 요청합니다. 웹 서버는 요청을 승인하고 HTTP response를 통해 웹 사이트 데이터를 브라우저에 전송합니다. 브라우저는 서버에서 받은 데이터를 이용해 웹사이트를 브라우저에 그립니다. 자세한 내용은 브라우저의 개발자 도구의 네트워크 탭에서 확인할 수도 있습니다. 공감수 0 댓글수 0 2022. 1. 21.
  • HTTP HTTP 데이터를 주고 받는 양식을 정의한 프로토콜(통신규약)입니다. 매우 범용적인 양식을 가지고 있어 전 세계에서 제일 널리 쓰이는 프로토콜입니다. HTTP가 데이터를 주고 받는 방법 Request, Response라는 개념이 존재합니다. request하면 response가 있어야합니다. 서버와 브라우저의 관계 브라우저(클라이언트)는 서버에게 자신이 원하는 페이지(URL 등의 정보)를 요구(Request)합니다. 서버는 브라우저가 원하는 페이지가 있는지 확인하고, 있다면 해당 페이지에 대한 데이터를 반환(Response)해줍니다. 없다면 없는 페이지에 대한 데이터를 반환합니다. (404에러 관련 페이지) 브라우저는 서버에게 전달 받은 데이터를 기반으로 브라우저에 그려줍니다. 상태를 저장하지 않습니다.(.. 공감수 0 댓글수 0 2022. 1. 21.
  • API? Application Programming Interface 서버와 클라이언트가 상호 작용하기 위한 도구, 네트워크 상에서 데이터를 주고 받으며 개발자가 원하는 기능을 구현하기 위해서 사용된다. API는 웹에서 주로 사용하는데 클라이언트가 서버에 요청을 보낼 때는 HTTP 요청 메서드를 주로 사용한다. 이 중에 가장 자주 사용하는 것이 GET과 POST다. 클라이언트의 GET 요청은 서버에서 데이터를 받아오고 POST 요청은 서버의 상태에 변화를 줄 수 있다. API 작성 웹 APP(프론트엔드)에서 원하는 기능을 수행하는 URL과 인터페이스를 제공한다는 의미 작성 할 API에서 원하는 데이터를 받아 데이터베이스에 데이터를 저장하고, 저장되어 있는 데이터를 읽어서 프론트엔드에 데이터를 제공해서 사용자가 원.. 공감수 0 댓글수 0 2022. 1. 16.
  • JWT를 이용한 로그인 기능 Jason Web Token Jason 또는 평문을 서명(JWS)하거나 암호화(JWE) 한다. [RFC7519] 이번 프로젝트에서는 패스워드를 SHA256으로 암호화해서 DB에 저장하고, 서명이 들어간 토큰을 클라이언트에게 전달하기 위해서 JWT를 사용했습니다. Flask에 JWT를 사용했습니다. PyJWT를 설치했습니다. 로그인이 성공한 경우 저장된 쿠키(토큰) //JWT import import jwt //JWT 서명 과정에서 키를 사용합니다. 키 값은 자유롭게 지정할 수 있습니다. SECRET_KEY = 'SPARTA' //로그인은 POST 방식으로 진행합니다. $.ajax({ type: "POST", url: "/sign_in", data: { //username을 user_give로 전달 use.. 공감수 0 댓글수 0 2022. 1. 16.
  • Bulma Bulma 링크 https://bulma.io/documentation/ Bulma: Free, open source, and modern CSS framework based on Flexbox Bulma is a free, open source CSS framework based on Flexbox and built with Sass. It's 100% responsive, fully modular, and available for free. bulma.io 공감수 0 댓글수 0 2022. 1. 13.
  • 쿠키, 세션 HTTP는 connectionless, stateless 특성을 가지고있음 쿠키와 세션은 이 특성으로 인한 문제를 보완하기 위해서 사용한다. connectionless 클라이언트가 요청에 응답을 받으면 연결을 끝는 특성 Keep-alive라는 값을 헤더에 넣어서 연결을 재활용 할 수 있다. Keep-alive는 HTTP1.1에서 디폴트(현재 버전은HTTP2와 HTTPS) stateless 연결(클라이언트와 서버의 통신)이 끝나면 상태 정보를 유지하지 않는 특성 쿠키 클라이언트의 브라우저에서 지정한 로컬 경로에 파일로 저장됩니다. 쿠키가 유효한 기간을 명시할 수 있습니다. 유효 시간을 명시하면 브라우저가 종료되도 쿠키가 유효하며 인증이 가능합니다. Response Header에 Set-Cookie 속성을 .. 공감수 0 댓글수 0 2021. 10. 21.
  • Sublime text sudo권한으로 실해하기 공감수 0 댓글수 0 2021. 10. 17.
  • 정적 페이지 VS 동적 페이지 정적 페이지 클라이언트가 요구한 페이지를 호출하기 위한 데이터를 모두 서버가 가지고 있다. 페이지 규모가 커지면 보유해야 하는 데이터, 호출에 응답하는 데이터가 늘어난다. html 동적 페이지 클라이언트의 행동에 반응하는 페이지 작은 규모의 페이지는 반응에 필요한 데이터를 로컬에 보관, 페이지 규모가 커지면 관리, 성능 향상또는 보안을 위해서 별도의 서버에 보관한다.(WAS, DB) PHP WAS의 역할 웨서버와 역할을 분담해서 부하를 방지하고 페이지 반응 속도를 높인다. 데이터를 분리 보관해서 보안을 강화한다. 데이터를 분리하는 기준, 데이터는 DB에 보관하고 암호화 통신을 사용하면 충분하지 않은가? 장애 대비(우회로, 로드 벨런싱) Web Container 서블릿을 관리함(서블릿?) 공감수 0 댓글수 0 2021. 10. 17.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.