WIL 썸네일형 리스트형 이노베이션 캠프 5주차 WIL 1.CORS(Cross-Origin Resource Sharing) http헤더를 이용해서 A에서 실행 중인 웹 애플리케이션이 다른 B의 선택한 자원에 접근할 수 있는 권한을 부여하도록 브라우저에게 알려주는 체제이다. 브라우저간의 서버간의 안전한 교차 출처 및 데이터 전송을 지원한다 리소스가 자신의 출처(도메인,프로토콜,포트)가 다를 때 교차 출처 http요청을 실행한다 다른 출처의 리소르를 가져오기 위해서는 그 출처의 리소스 공유에 대한 헤더(CORS)를 응답 시 반환해주어야 한다. 동작원리 (1) 웹이 다른 출처의 리소스를 요청할 때 HTTP 프로토콜을 사용해 요청한다. 이때 브라우저는 요청 헤더(request header)에 Origin 피들에 요청을 보내는 출처를 담아 전송한다. (2) 서버는 요.. 더보기 이노베이션 캠프 4주차 WIL 1.ORM 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 말한다. 객체 지향 프로그래밍은 클래스를 사용하고, 관계형 데이터베이스는 테이블을 사용한다. 객체 모델과 관계형 모델 간에 불일치가 존재한다. ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다. 2.SQL SQL은 관계형 데이터베이스(RDBMS)에서 자료를 관리 및 처리하기 위해 설계된 언어이다. SQL문법은 크게 3가지 종류로 나뉘며 그종류는 DDL,DML,DCL으로 나뉜다. DDL(데이터 정의언어) 각 릴레이션을 정의하기 위해 사용하는 언어(CREATE,ALTER,DROP,...) DML(데이터 조작 언어) 데이터를 추가/수정/삭제하기 위한, 즉 데이터 관리를 위한 언어(SELECT,I.. 더보기 이노베이션캠프 3주차 WIL 1. 주특기 입문+숙련 주차 주특기 입문 주차에서 개인 과제로 Spring으로 AWS와 MYSQL를 이용한 간단한 항해 블로그 프로젝트를 만들었고. 팀 과제로는 JPA, Controller, Repository, Service와 같은 기본 이론에 대한 것을 적었다. 주특기 입문 주차가 끝나고 금요일부터 주특기 숙련 주차가 시작되었다. 주특기 숙련 주차부터 주특기 입문 주차와 비교했을 때 난이도가 엄청 많이 상승된 느낌을 느꼈다. 이제까지 본 주특기 숙련 주차 강의에서는 Spring security를 활용한 회원가입. OAuth2를 이용한 카카오톡 로그인, Spring MVC, DI, IOC, 쿠키와 세션, JUnit을 이용한 테스트 등을 배웠다. 2.DI DI란 스프링이 제공하는 의존관계 주입 기능으로 .. 더보기 이노베이션캠프 2주차 WIL 1. 알고리즘 여러 가지 알고리즘 문제를 풀면서 리스트나 배열들을 다루는 함수, String함수 반복문과 조건문 등 자바 문법에 친해지는 계기가 되었다. 프로그래머스에서 여러 가지 문제를 풀고 저녁에 팀원들끼리 모여 본인이 맡은 문제를 설명하면서 더 효율적인 알고리즘은 무엇이 있을지 찾아보는 시간도 있었다. 반목 문과 조건문은 다른 언어에서 많이 접해서 인지 괜찮았지만 자바만의 함수를 쓰는 것에는 어려움을 겪었다. 다양한 문제들을 풀면서 이제는 자바의 리스트나 배열 여러 가지 문법에 대해서 조금이나마 이해를 한 주였다. 2.Spring 목요일 밤 알고리즘이 끝나고 금요일 아침부터 Spring에 관한 주특기 입문 주가 왔다. 서버를 이제 python이 아닌 자바와 스프링을 이용하여 만드는 방법을 배웠다. .. 더보기 이노베이션 캠프 1주차 WIL 파이참으로 첫 번째 프로젝트를 만들면서 필수과제인 JWT를 이용하여 회원가입과 로그인을 구현하였다. 회원가입 시 비밀번호를 해쉬값으로 변환하여 DB에 저장하여 해쉬값이 유출되더라도 비밀번호를 알 수 없도록 하게 했다. @app.route('/sign_up/save', methods=['POST']) def signup_save(): id_receive = request.form['id_give'] password_receive = request.form['password_give'] nickname_receive = request.form['nickname_give'] password_hash = hashlib.sha256(password_receive.encode('utf-8')).hexdigest().. 더보기 이전 1 2 다음