728x90 사이드 프로젝트/개발몰입과정[2021_SUMMER]23 3주차 개념 스터디 - CORS [ CORS란? ] 도메인 또는 포트가 다른 서버의 자원을 요청하는 매커니즘 Cross-Origin Resource Sharing의 약자로, 추가적인 HTTP header를 사용하여 애플리케이션이 다른 origin의 리소스에 접근할 수 있도록 권한을 부여하는 메커니즘이다. CORS 체제는 브라우저와 서버간의 안전한 교차 출처 요청 및 데이터 전송을 지원한다. 최신 브라우저는 XMLHttpRequest 또는 Fetch와 같은 API에서 CORS를 사용하여 교차 출처 HTTP 요청의 위험을 완화한다. 웹 애플리케이션은 리소스가 자신의 출처(도메인, 프로토콜, 포트)와 다를 때 교차 출처 HTTP 요청을 실행하는데, 브라우저는 보안상의 문제로 스크립트에서 시작한 교차 출처 HTTP요청을 제한한다. 따라서 다른.. 2021. 8. 19. 3주차 개념 스터디 - Javascript의 비동기 기술 [ 동기와 비동기 ] 동기와 비동기는 추상적인 개념이다 동기 (stnchronous) 동기란 요청과 그 결과가 동시에 일어난다는 것으로, 바로 요청을 하면 결과가 나올때까지 기다렸다가 해당 요청을 먼저 처리하고 다음 요청으로 넘어간다. 설계가 간단하고 직관적이지만, 결과가 주어질 때까지 다른 요청은 수행하지 못하고 대기해야 한다는 단점이 있다. 비동기 (asynchronous) 비동기란 요청과 결과가 동시에 일어나지 않는 것으로, 요청이 들어오고 시간이 걸리면 다음 요청부터 처리하고 이전 요청이 끝나면 그 결과를 전달한다. 동기보다 복잡하지만, 요청에 대한 결과 처리가 오래 걸리면 다른 작업을 할 수 있으므로 자원을 효율적으로 사용할 수 있다. [ blockging과 non-blocking ] Block.. 2021. 8. 18. 3주차 개념 스터디 - Typescript [ Typescript ] 2012년 마이크로소프트가 발표한 언어로, 자바스크립트를 기반으로 정적 타입 문법을 추가한 프로그래밍 언어이다. [ Typescript의 특징 ] 컴파일 언어 & 정적 타입 언어 자바스크립트가 동적 타입의 인터프리터 언어로 런타임에서 오류를 발견할 수 있는 것에 반해, 타입스크립트는 정적 타입의 컴파일 언어로 타입스크립트 컴파일러 또는 바벨(Babel)을 통해 자바스크립트 코드로 변환된다. 코드 작성 단계에서 타입을 체크해 오류를 확인할 수 있고, 미리 타입을 결정하기 때문에 실행 속도가 매우 빠르다는 장점이 있다. 하지만 코드 작성 시 매번 타입을 결정해야 하기 때문에 번거롭고 코드량이 증가하며, 컴파일이 오래 걸린다는 단점이 있다. 자바스크립트 슈퍼셋(Superset) 타입.. 2021. 8. 18. 생활코딩 node.js - API와 CreateServer 웹서버를 만들고 첫번째 인자를 request에 넘겨준다 app에 http.Server라는 객체를 반환하여 저장한다 요청에 대해 웹서버를 listen하도록 요청한다 여기서 app은 위에서 만든 웹서버 객체 하 수업 진짜 끝! 이제 깃허브에 올려야지,, 2021. 8. 17. 생활코딩 node.js - 보안 [ 입력정보에 대한 보안 ] 데이터베이스 -> id, passwd가 있어야 데이터를 사용할 수 있다 id, passwd를 관리해야 한다!! 만약 비밀번호를 'password.js'라는 파일에 저장해놓고, 입력 정보에 대해 보안을 걸어두지 않으면 아래처럼 접근 시 파일 내용을 모두 볼 수 있게 된다 id 부분에 경로를 넣고 파일 이름을 넣으면 해당 파일의 내용이 그대로 노출되게 된다!! 따라서 이를 방지해줘야한다 이를 막기 위한 노드의 기술 중 path.parse라는 것을 사용해볼것이다 먼저 요렇게 path 변수를 선언하고 이런식으로 path.parse를 통해 정보를 한 번 필터링해서 사용한다 (파싱) 이는 사용자로부터 정보가 들어오는 create, update, delete 에 모두 추가하면된다 [ 출력.. 2021. 8. 16. 생활코딩 node.js 개념 정리 (2) [ HTML form ] form안에 있는 각각의 정보를 submit을 눌렀을 때 action 속성이 가리키는 서버로 query stirng 형태로 전달하는 HTML 기능이다 서버에 데이터를 수정, 생성, 삭제시에method를 post로 하면 url에는 query string이 안보이고, 보이지 않는 방식으로 데이터가 전송된다 -> 정보 보안에도 좋으며, 큰 데이터도 전송이 가능하다! [ object vs array ] 공통점 : 데이터를 정리정돈하는 역할 배열 : 정보를 순서대로 정리하며, 식별자가 숫자임 객체 : 정보를 순서없이 정리하며, 식별자가 이름임 [ 객체 반복문 ] 여기서 n은 객체 멤버 이름, value는 그 값이란다 그래서 n 대신에 name을 서도 똑같이 동작한대 약간 신기한대 이상해서.. 2021. 8. 16. 이전 1 2 3 4 다음 728x90