WEB/node.js

node.js - 생활코딩 (2020/12/30)

민철킹 2021. 1. 21. 12:07

수업 내용 필기

-----------------------------------------------------------------------------------------------------------------------------------

pathname은 쿼리스트링을 제외한 path만을 보여줌
이를 통하여 root로 접속했는지를 판별할 수 있다.
즉 우리가 만든 웹페이지인 root로 접속하면 원래대로 화면 보여주고
그 외의 path로 접속하면 에러 메시지

fs.readdir은 특정 디렉토리에 있는 목록을 배열에 담아서 
보여준다.

즉 이를 반복문을 통하여 수정,삽입을 한다면 main.js에서 일일이
수정이 필요없이 한 번에 모든 내용을 수정 가능.

템플릿과 readdir, readfile을 이용하여 node.js를 통하여 페이지를 구성한다면
우리가 data폴더에 문서를 작성하는 것만으로도 목록에 자동으로
추가되고 페이지가 연동된다 ==> 동적인 웹페이지

 

synchronous & assynchronous (동기적 & 비동기적)
동기적: 어떤 일을 처리한다면 순차적으로 하나를 끝낸 다음에
          그다음 작업을 수행

비동기적: 어떤 일을 시작한 후 그 일이 끝날 동안 다른 일을
             병렬적으로 수행(동시에 여러 가지 처리)

 

node.js ==> 비동기적인 처리를 위한 여러 기능을 가지고 있음.
하지만 비동기적 처리는 효율적이지만, 굉장히 까다롭고 복잡함.

readFileSync ==> 동기적 처리
==> 리턴 값이 있어서 변수에 값을 담을 수 있음.

 

readFile ==> 비동기적 처리
매개변수로 callback을 줘야 하므로 function 즉 함수를 줌.
변수에 값을 담아 사용 x

결론: 동기적 처리를 하면 문장 순서에 따라 값이 출력되지만
비동기적 처리는 먼저 완료된 순서대로 출력된다.

==>syntax/sync.js 코드 참조 (github)

 

Package Manager
-NPM

 

input을 통해 내용 입력하고 그것을 html form태그로 감싼 후,
form태그의 속성인 action에 url을 입력하면 input 태그의 속성과 요소의
값을 url에 추가하여 보내줄 수 있다. querystring을 만들어줌.

웹페이지 주소를 전달할 때는 수정, 삽입, 삭제와 같은 기능을 할 수 있는
페이지의 주소는 다른 사람이 볼 수 없게 전달해야 함.
볼 수 있다면 외부인이 접속하여 수정, 삽입, 삭제가 가능하므로 보안상 문제
==> 정보은닉
==> form태그 속성에 method="post"를 추가하면 보이지 않게 전달
      querystring은 보이지 않고 action값만 보임

웹페이지를 가져올 때는 method="get"
post 방식으로 전달했을 때 컨트롤+쉬프트+i를 통해 개발자 탭에  ==>(웹 프로그래밍 프로젝트할 때 아무 생각 없이 썼들어가서 네트워크의 headers를 보면 전달된 데이터를 볼 수 있음.        던 get, post 방식에 대해 이해했다. ㅡ_ㅡ)

request.on ==> post방식으로 데이터를 전송할 때 받는 메소드  
콜백 함수를 통하여 전송받은 데이터를 실행

request.on('data', function(data){}); ==> 'data'를 받음

request.on('end', function(data){});  ==> 더 이상 받을 데이터가 없으면 실행

데이터를 받은 후 qs.parse메소드를 통하여 불러옴

==>즉, 받은 데이터를 객체화할 수 있다.

 

 

 

전체 소스코드: github.com/MinChul-Son/Studying_node.js

 

MinChul-Son/Studying_node.js

Contribute to MinChul-Son/Studying_node.js development by creating an account on GitHub.

github.com

 

 

 

반응형