본문 바로가기

서버/서버

(9)
인증) OAuth 2.0 - 카카오인증 실습(feat. postMan) oAuth 2.0의 인증과정을 전 글에서 보았으니 실제로 포스트맨으로 실습을 해보자. 카카오 디벨로퍼 사이트에 가입한다. developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 사실 카카오 디벨로퍼에는 가이드가..
인증) JWT(JSON Web Token) 우리는 여러 사이트를 이용할 때 로그인을 하고 사용자 인증을 한 후 정보를 제공받는다. 하지만 우리가 사이트 내에서 이동할 때, 로그인이 유지될 필요가 있는데 이 방법들을 알아보고 왜 jwt라는 것을 이용하는 것에 도달했는지 알아보자. 1. 매번 아이디와 비밀번호로 로그인하기. 클라이언트의 HTTP의 특성 STATELESS. 즉 무상태성을 원칙으로 두기 때문에 아이디와 비밀번호 정보를 저장하지 않는다. 즉 페이지가 이동할 때 마다 아이디와 비밀번호를 서버로 보내는 형식으로 로그인 하는 가장 기초적인 방법이다. 하지만 이는 아이디와 비밀번호를 그대로 보내는 횟수가 많아지면서 스니핑, 스푸핑등의 공격위협에 취약하다. 2. 세션, 쿠키기반 인증 위 로그인의 방법을 해결하기 위해 로그인을 위해 사용자 정보(아이..
REST / REST API / RESTful Representational State Transfer HTTP를 기반으로한 웹서비스를 최대로 이용가능하게 할 수 있는 소프트웨어 아키텍쳐이다. HTTP의 설계가 우수하게 된 것에 비해 재대로 사용되지 못하는 것을 보완하기 위해 정한 HTTP이용방법의 하나라고 생각하면 쉽다. 자세한 내용은 링크참고https://meetup.toast.com/posts/92REST API 제대로 알고 사용하기 : TOAST MeetupREST API 제대로 알고 사용하기meetup.toast.com
Query string vs Path Variable 1. Query String - [get] /users?id=3&name='tomas' 유저중 id가 3이고 이름이 tomas인 사람 - 검색, 필터링, 페이징처리, 정렬의 형식에서 사용 2. Path Variable - [post] /user/22 22번유저를 특정 - 리소스를 식별해서 요청할 때 사용 - 경로를 변수로서 사용하는 것 3. 사용 /users # 사용자 목록을 가져온다. /users?occupation=programer # 프로그래머인 사용자 목록을 가져온다. /users/123 # 아이디가 123인 사용자를 가져온다. 또한, 기본적인 CRUD 기능을 위해서 또 다른 URL이나 query parameter를 정의할 필요는 없다. 대신 원하는 기능에 맞게 HTTP 메소드를 바꾸어야 한다. ..
HTTP HyprtText Transfer Protocol. - 웹상에서 html등의 문서를 주고받기 위한 프로토콜. - 클라이언트 - 서버간의 프로토콜이다. 프록시 :https://ko.wikipedia.org/wiki/%ED%94%84%EB%A1%9D%EC%8B%9C_%EC%84%9C%EB%B2%84 - 80번포트를 사용한다. - 요청 - 응답의 구조로 되어 있다. - 클라이언트가 request메시지로 요청을 보내고 서버에게서 response메시지로 응답을 받는다. GET : 조회 POST : 생성(서버에서의 작업 수행) PUT : 수정 DELETE : 삭제 PATCH : 일부수정 응답 코드 200번대 : 성공 200 : 응답성공 203 : 요청중 일부만 응답 300번대 : Redirection 300 : 최..
API API - Application Programing Interface. 서버와 클라이언트 사이. 서비스 제공자와 서비스 이용자 사이. 어플리케이션과 어플리케이션 사이. 데이터와 데이터 가공자 사이 서비스받는 대상을 이용 할 수 있도록 하는 인터페이스이다. 쉽게 설명하자면 방법의 집합이다. 데이터를 사용하는 방법. 서비스를 이용하는 방법. (통신규약인 프로토콜과는 다르다.) 예를들어 화면 UI를 생각해보자. 핸드폰에서 [사진]을 보려면 [핸드폰 쓰는 사람]이 [홈버튼을 누르고 비밀번호를 입력하고 사진어플을 터치] 해야한다. 홈버튼을 누른다던지 사진어플을 누른다던지, 이런 사진을 보기 위한 방법들이 API라고 볼 수 있다. 이를 서비스로 표현해보면, 서비스에서 [데이터]를 쓰려면 [데이터를 가지고 오려는 사..
Web Server와 DB를 분리하는 이유 0. Server의 구성 (web Container = Servlet Container = WAS라고도 한다.) WEB SERVER - APACHE, NGINX WAS - TOMCAT, 제우스 이 글에서는 Web Server와 Web Container를 따로 두고 Web Container = WAS로 두겠다. 1. 부하분산 가동중인 서버의 리눅스 쉘에서 다음 명령어를 실행해보자. $ uptime 순서대로 현재시간, 서버가 가동된 후의 시간(6일 1시간 7분), 로그인한 유저의 수, 그리고 load average는 순서대로 1분, 5분, 10분간의 cpu 이용률을 1을 100%로 표현한 것. 예를 들어, 서버를 처음 구축했을때 웹서버와 WAS, DB서버의 이용률이 각각 0.1 0.1 0.1이라고 하자. 그..
데몬이란 ? https://proni.tistory.com/entry/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4-%EB%8D%B0%EB%AA%AC%EC%9D%B4%EB%9E%80 프로그램 / 프로세스 / 데몬 https://blogger.pe.kr/770 데몬의 정의 https://rrhh234cm.tistory.com/194 [ 기본정리 ] 데몬 프로세스 데몬(Daemon) 은 리눅스의 백그라운드에서 동작하면서 특정한 서비스를 제공하는 프로세스를 의미한다. 리눅스 시스템에서 동작하는 웹 서버나 데이터베이스 서버, 원격 접속 서버 등 각종 서비�� rrhh234cm.tistory.com