본문 바로가기

Javascript17

React 루트 url이 아닌 다른 특정 url에서 새로고침을 하면 404페이지가 뜨는 오류 1. 오류 확인 루트 url(https://www.~.com/)이 아닌 다른 url(http://www.~.com/page)에서 새로고침을 하면 404 오류 발생 로컬에서는 오류가 없다가 Apache Web Server에 올리니까 오류 발생 2. 원인 파악 index.js가 연결되어야지만 배포가 가능 React Router를 사용하여 url를 관리하고 있었는데 루트 url 즉 BASE가 되는 url에 경우에는 index.js를 연결시켜 배포하기 때문에 새로고침을 해도 index.js가 배포되지만 다른 특정 url에서 새로고침을 하면 해당 url에 맞는 js를 찾으려고 하기 때문에 오류 발생 3. 해결 Apache mod_jk에 설정 추가(경로: /etc/httpd/conf/httpd.conf) Serve.. 2020. 1. 9.
Https와 Http2 https 모듈 웹 서버에 SSL 암호화를 추가한다. GET or POST 요청을 할 때 오고 가는 데이터를 암호화하여 중간에 다른 사람이 요청을 가로채더라도 내용을 확인 못하게 해준다. 기본 http 서버 코드 const https = require('http'); const fs = require('fs'); https.createServer((req, res) => { res.write('Hello Node!'); res.end('Hello Server!'); }).listen(8080, () =>{ console.log('8080번 포트에서 서버 대기 중'); }); 위 서버를 암호화하기 위해 https 모듈 사용 const https = require.'https'); const fs = req.. 2019. 11. 6.
Rest API와 라우팅 REST API는 주소 외에도 HTTP 요청 메서드라는 것을 사용한다. 요청 메서드 종류 GET, POST, PUT, PATCH, DELETE 예시 서버 코드) //restServer.js const http = require('http'); const fs = require('fs'); const user = {} http.createServer((req, res) =>{ if(req.mothod === 'GET'){ if(req.url === '/'){ return fs.readFile('./restFront.html', (err, data) => { if(err) { throw err; } res.end(data); }); }else if(req.url === '/about'){ return fs... 2019. 11. 6.
쿠키와 세션 이해하기 쿠키의 역할 클라이언트가 누구인지 기억하기 위해서 서버는 요청에 대한 응답을 할 때 쿠키라는 것을 같이 보내준다. 클라이언트는 서버로 요청 할 때 마다 서버로부터 받은 쿠키를 같이 보내주어 클라이언트가 누구인지를 파악한다. 쿠키는 요청과 응답의 헤더에 저장된다. 서버에서 쿠키를 만들어 요청자의 브라우저의 넣기 const http = require('http'); const parseCookies = (cookie = '')=> cookie .split(';') .map(v=> v.split('=')) .map(([k, ...vs]) => [k, vs.join('=')]) .reduce((acc, [k, v]) => { acc[k.trim()] = decodeURIComponent(v); return ac.. 2019. 10. 22.
이벤트 이해하기 events 모듈을 사용하여 MyEvent라는 객체를 만들었고 객체에는 이벤트 관리를 위한 메서드들이 있다. on(이벤트명, 콜백): 이벤트 이름과 이벤트 발생 시 의 콜백을 연결해줌 - 이벤트 리스닝 addListener(이벤트명, 콜백): on과 기능이 같음 emit(이벤트명): 이벤트를 호출 once(이벤트명, 콜백): 한 번만 실행되는 이벤트 removeAllListeners('이벤트명'): 연결된 모든 이벤트 리스너를 제거 removeListener(이벤트명, 리스너): 연결된 리스너를 하나씩 제거 off(이벤트, 콜백): removeListener과 기능이 같다. listenerCount(이벤트명): 연결된 리스너 개수 확인 예시코드) const EventEmitter = require('ev.. 2019. 10. 19.
요청과 응답 이해하기(서버구현) 서버구현 const http = require('http'); http.createServer((req, res) => { res.write('Hello Node!'; res.end('Hello server!'); }).listen(8080, () => { console.log('8080번 포트에서 서버 대기 중입니다!'); }); //listen 메서드에 콜백 함수를 넣는 대신, listening 이벤트 리스너를 붙여도 된다. // -> server.listen(8080); server.on('listening', () =>{ console.log('8080번 포트에서 서버 대기 중입니다!'); }); server.on('error',(error)=>{ console.error(error); }); 명.. 2019. 10. 19.