본문 바로가기

nodejs9

[Node.js] node.js에서 mysql 사용 시 escape 사용하는 방법 (feat. sql injection) 하이 ~~!! 오랜만에 포스팅한다 .. ㅎㅎ 요즘 디자인 공부에 살짝 빠져서 .. ㅎㅎ 앱디자인 중인데 !! 앱이 완성되면 여기 블로그를 통해 공개하도록하겠다 ! 자자 .. 아무튼 오늘은 .. ㅎㅎ nodejs에서 mysql을 사용할 때 escape를 사용하는 방법을 포스팅해볼거다. 오늘은 아래의 링크에서 자료를 참조했다. https://github.com/mysqljs/mysql#escaping-query-values mysqljs/mysql A pure node.js JavaScript Client implementing the MySQL protocol. - mysqljs/mysql github.com 먼저 escape가 뭔지 부터 알아보자. escape 간단하게 말해서 escape는 데이터를 전달.. 2020. 1. 3.
[Node.js] node.js 에서 controller 사용하기 하이 ㅎㅎ!! 지난번에 ajax랑 mysql 연결하는 포스팅을 올렸었다.. 그런데 ... 하다보니 ... 소스가 너무 너무 분리가 안된 듯한 느낌을 받았다. ㅜㅡㅜ 그래서 오늘은 controller를 만들어서 api를 관리하는 걸 만들어 보려고한다. 컨트롤러라고 표현하기도하고 라우터라고 표현하는 사람도 있다. 뭐 여기서는 같은 의미로 쓰인다고 생각하면 될듯하다. 간단하게 로그인을 할 수 있는 프로젝트를 만들어봤다. 디렉토리 구조를 보면 위와 같다. app.js 는 다들 아시는 것 처럼, 웹서버 데몬을 구동한다. 이전에 코딩해놓은 걸 보면 app.js 안에서 너무 많은 코드가 들어 있었다. 지금 만들어 놓은 걸 한번 보자. 굉장히 간결해졌다. 이제는 여기서 api 소스를 작성할 필요가 없다. control.. 2019. 12. 30.
[Debugging] node.js 에서 Cannot set headers after they are sent to the client 에러 발생할 때 하이~ 웹서버 데몬을 올리고 post 로 url을 전송할 때 이런 에러가 발생했다.. 이 에러메세지는 기본적으로 응답값 리다이렉트 처리가 잘못 되었을 때 발생하는데, 대게는 중복처리를 했을 경우 발생한다. if 문이나 for 문에서 res 값이 중복처리 된 경우가 있는지 찾아보면 된다. 나 같은 경우는 .. 아주 이상한 실수를 했는데... 테스트를 위해 첫줄에서 res를 보내고 또 마지막 에 res를 json으로 전송한다.. ㅎㅎㅎ 이런 사소한 실수를 줄여야하는데 .. ㅜㅡㅜ 다들 실수하지 말자. 2019. 12. 29.
[Node.js] Sublime Text 에서 개발환경 최적화하기 하이 ~~ 요즘 node.js 를 공부하고 있는데 ㅎㅎ 조금 더 편한 환경에서 작업하기위해서 Sublime Text에서 개발환경을 세팅 해보려고 한다. 두가지를 할건데 하나는 빌드환경 세팅 , 하나는 개발 환경 세팅이다. 먼저 빌드환경세팅 부터 해보자. 아주 간단하다. 빌드환경 세팅 1. Add Repository shift + ctrl + p 를 누르고 add repository를 선택하자. 2. git url 입력하고 패키지 설치하기 하단에 https://github.com/tanepiper/SublimeText-Nodejs.git 입력하고, Package Control 에서 nodejs라고 입력한 뒤에 상단에 있는 것을 설치해주자. 3. 빌드 환경 바꾸기 Tools > Build System > N.. 2019. 12. 29.
[Node.js] node.js 에 mysql 연동하는 방법 하이 ~~!! 오늘은 node.js 웹서버의 ajax를 사용하는 예제에 mysql을 연동해볼거다. ㅎㅎ 만약 이 예제가 기억 안난다면 !! 아래 링크를 보고 오자. https://devkingdom.tistory.com/82 [Node.js] JSON 데이터 Ajax에서 처리하기 하이 ~~!!! 보통 웹페이지를 개발하다 보면 웹페이지를 비동기방식으로 처리해야할 때가 있다. 비동기 방식은 웹페이지를 리로드 하지 않고 데이터를 불러오는 방식을 의미한다. 기본적으로 Http 프로토콜은 클라.. devkingdom.tistory.com 자 그럼 본격적으로 연동을 시작해보자 ! node.js 에 MySQL 연동하기 먼저 항상 그래왔던 것 처럼 mysql을 설치해주자! 그리고 mysql에 접속해서 데이터 베이스도 .. 2019. 12. 27.
[Node.js] JSON 데이터 Ajax에서 처리하기 하이 ~~!!! 보통 웹페이지를 개발하다 보면 웹페이지를 비동기방식으로 처리해야할 때가 있다. 비동기 방식은 웹페이지를 리로드 하지 않고 데이터를 불러오는 방식을 의미한다. 기본적으로 Http 프로토콜은 클라이언트 쪽에서 request를 보내고 서버 쪽에서 response를 받으면 연결이 끊기기 때문에 화면을 갱신하기 위해서는 페이지 자체를 갱신해줘야한다. 이는 엄청난 자원낭비라고 할 수 있다. 비동기 방식으로 여러분들이 처리를 해주면 필요한 데이터만 받아서 갱신하기 때문에 자원과 시간을 아낄 수가 있다. Ajax Ajax가 바로 이 비동기 방식을 지원한다. Ajax는 java script 의 라이브러리중 하나인데 Asynchronous Javascript And Xml 의 약자이다. 오늘은 node.j.. 2019. 12. 22.
[Node.js] EJS 모듈 사용하기 하이 ~~!! 오랜만에 node.js 글을 쓴다. ㅎㅎ 이전에 우리가 post 방식의 url 을 처리하는 방법을 공부했었다. 오늘은 EJS라는 모듈을 활용해볼 것이다. EJS EJS 는 Embedded JavaScript Template의 약자로 nodejs 진영에서 많이 사용하는 템플릿엔진이라고 한다. 데이터를 html에 바로 뿌리고 싶을때 사용하면 된다. 문법 자체는 굉장히 간단해서 한번 슥 ~~ 보면 다들 사용하실 수 있을 거다. 먼저 모듈을 사용하려면 설치를 해줘야겠지?? 이전에 모듈을 설치하듯이 위의 명령어를 쳐주면 된다. 자 설치 다 되셨으면 view engine을 ejs로 세팅해주자. ㅎㅎ ejs 뿐만 아니라 다른 view engine도 있다. 나는 아직 ejs 밖에 안써봐서 다른 건 잘 모.. 2019. 12. 22.
[Node.js] post 방식으로 URL 처리하기 하이~~!! 지난번 포스팅에서 get 방식으로 URL을 라우팅하는 방법을 배웠었다. ㅎㅎ 혹시 기억 안니시면 아래 링크를 참고해서 공부하고 옵시다! https://devkingdom.tistory.com/78 [Node.js] get 방식으로 URL 처리하기 하이 ~~~ 오늘은 지난번에 포스팅했던 구축되어 있는 node 웹서버에서 get 방식으로 url 호출을 해볼꺼다 !! ㅎㅎ 아 맞다..!! 계속 vi 편집으로 작업하는게 귀찮아서 환경을 Sublime Text로 구축해놨다. ㅎㅎ 혹.. devkingdom.tistory.com 오늘은 post 방식으로 URL을 처리해볼꺼다. post 방식으로 URL 처리하기 먼저 아주 간단하게 post 방식으로 url을 날릴 html을 하나 간단하게 작성해주자. ㅎㅎ.. 2019. 12. 19.
[Node.js] get 방식으로 URL 처리하기 하이 ~~~ 오늘은 지난번에 포스팅했던 구축되어 있는 node 웹서버에서 get 방식으로 url 호출을 해볼꺼다 !! ㅎㅎ 아 맞다..!! 계속 vi 편집으로 작업하는게 귀찮아서 환경을 Sublime Text로 구축해놨다. ㅎㅎ 혹시 이렇게 환경을 만들고 싶으신분들은 아래 링크에서 구축하고 오자. https://devkingdom.tistory.com/76 [AWS] AWS EC2 랑 Sublime Text 3 연동하기 하이~! 예전에 AWS 같은 Cloud에 서버를 두고 프로젝트르 할때 서버단 어플리케이션을 수정하면 매번 불편하게 FileZilla 같은 sFTP 프로그램을 이용해서 올리곤 했다. 흠 .. 그게 너무 불편해서 좋은 방법이 없을.. devkingdom.tistory.com 자 두말할 필요없.. 2019. 12. 18.