문자열 포매팅이라고 생각하면 될 것 같다.
사용자가 URL 주소로 요청을 보낸다면, 서버 측에선 요청 받은 URL을 분석하는 코드를 작성하여 어떤 값을 주었고 어떤 값을 받기를 원하는지에 대한 응답을 주어야 한다.먼저 서버를 가동하고 url을 받아와 분석하는 기술이 필요한데 이 기술들(모듈)은 require라는
(정보를 처리하는 핵심적인 방법 그 중 파일 읽어오기)fs모듈을 불러오고 readFile로같은 디렉토리 위치에 있는 sample.txt를 읽어서 console에 띄움
process.arvg로 서버실행중에 입력을 받을 수 있다.그럼 process리스트에 추가되는데 첫번째 인덱스는 node의 런타임이고 두번째는 서버 파일이 존재하는 디렉토리이다. 그 다음 입력값들이 추가된다.
위 사진에서 URL이라는 리스트가 url.parse가 분석한 정보들을 담고 있는 것을 볼 수 있다.그중 pathname이라는 변수는 쿼리스트링을 제외한 path만을 담고 있다. path가 아닌(위에는 루트 경로) url요청이 들어오면 404에러를 띄워주는 코드이다. (
만약 읽고 출력해야할 파일들이 늘어난다면, 그때 마다 html을 수정할 순 없을 것이다. js를 이용해서 파일을 읽을 때마다 목록을 생성하여 html 코드가 자동으로 수정되는 코드를 작성해보면,readdir로 읽어온 파일들의 이름이 담겨있는 리스트를 생성하고 반복문으로
패키지 - 소프트웨어를 부르는 또 다른 표현, 온전한 프로그램 또는 다른 프로그램을 위한 소형 프로그램 다 패키지라고 부를 수 있다. 이러한 소프트웨어들을 생성, 설치, 업데이트, 삭제를 관리해주는 소프트웨어를 패키지 매니저라고 한다.NPM은 node의 패키지 매니저이
동기적 - 한번에 한가지 일만 처리한다비동기적 - 여러가지 일을 동시에 처리한다 - 효율적이지만 복잡하다.위에 주석처리한 부분은 동기적인 처리로 readFileSync 함수의 작업이 끝나야 다음 코드를 실행하지만 밑에 readFile함수는 (js는 기본적으로 따로 안적
사용자의 요청은 서버 코드의 request변수에 들어온다.여기서 서버는 사용자의 요청이 들어올 때마다 두번째 인자인 function을 실행한다고 한다.app.listen(3000)으로 사용자의 요청을 기다린다고 하는데,,app.listen은 한번의 요청으로 app에 들
post로 받아온 데이터로 파일을 생성하여 저장하고, 다시 루트페이지로 돌아가려면 리다이렉션을 해야한다.저렇게 reponse.writeHead에 302를 주면 리다이렉션을 한다는 것을 브라우저에 알려주고 location으로 이동하고자 하는 경로를 적어 그 경로로 리다이
함수도 값이다. 처리 방법들이 있는 구문임과 동시에 하나의 값이다. 이렇게 배열에도 넣을 수 있고객체의 밸류에도 들어갈 수 있다. 정상적으로 배열, 객체 호출하는 것 같이 실행 가능이렇게도 사용 가능객체를 사용해서 그 객체에만 쓰는 함수?를 따로 객체 안에서 정의하고
npm init 앱을 패키지로 관리를 시작하는앱 정보를 json파일로 나타내는 package.json파일이 생긴다fileread 함수에 들어가는 id 쿼리 값에 ../을 추가로 입력하게 되면 상위 폴더의 주소가 들어가서 그 파일을 읽게 된다. 즉 관리자가 허용하지 않은
node.js 작업 환경에 mysql 서버에 명령어 요청을 보내고 응답을 주고 받는 모듈을 연동해야 한다. -> mysql이라는 외부 라이브러리를 npm으로 설치creteConnection이라는 메소드를 호출하여 mysql 서버 접속에 필요한 정보들을 입력한다.host
다시 지금까지 작성했던 클라이언트 페이지로 돌아와서 db 연동을 한다.원래는 fs로 서버 컴퓨터의 디렉토리에 있는 파일들을 불러와 id, title, description 정보를 html에 넣어주었지만(list 함수를 이용해서 가져온 파일들을 ul 태그에 파일의 제목
mysql의 insert 쿼리를 똑같이 node에서 사용하면된다.작성하고 입력할 데이터들을 html에서 받아와 쿼리문에 집어넣는 코드를 작성해보면업데이트가 끝나고 리다이렉션을 하는 코드에서 result.insertId는 insert쿼리가 끝나고 응답받는 result에