수강이 제한됩니다.
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
몽고디비 사용성 질문드립니다.
https://db-engines.com/en/ranking 보니까 5위던데 실무에선 언제 사용하나요?비정형 데이터를 수집할 때 유용하다고 말씀하셨는데 딥러닝이나 머신러닝 쪽에서 사용하나요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
nunjuks twits twit질문
<div class="twits"> . . . {% for twit in twits %} <div class="twit">main.html 넌적스 코드에 이런식의 코드가 있는데 twits 안에서 twit들을 반복을 하고 이 반복문이 돌아가면서 화면에 트윗들이 반복에서 출력되는걸로 이해를 하고 있습니다 그런데{{twit.User.nick}} {{twit.User.id}}이런 twit의 user.nick과 user.id는 데이터베이스에 posts 테이블에서 가져오는 것 같은데 twit과 데이터 베이스의 posts가 연결되서 가져오는 코드가 어디에 정의되어있는건가요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
Content-Type 질문드립니다.
const http = require("http"); const fs = require("fs").promises; const server = http .createServer(async (req, res) => { try { res.writeHead(200, { "Content-Type": "text/html; charset=utf-8" }); const data = await fs.readFile("./index.html"); res.end(data); } catch (e) { console.error(e); res.writeHead(200, { "Content-Type": "text/plain; charset=utf-8" }); res.end(e.message); } }) .listen(8080); server.on("listening", () => console.log("8080번 port에서 실행중...")); 응답에 Content-Type을 넣어서 Network를 확인했는데 아래와 같이 나옵니다. 왜 text/html; charset=utf-8 이 아니라 text/javascript 로 나오는 건가요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
ch9/9.5
깃허브 자료에 lecture 폴더내에 자료들이 없는것 같습니다.lectur 폴더내에 자료들을 ch9.5로 옮기셔서 깃헙에 올리신건지..
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
mysql sequelize 설정 관련 오류
안녕하세요! 구름ide에서 강의를 실습중인 학생입니다.다름이 아니라, npx sequelize db:create 명령어를 입력했을때, 다음과 같은 오류가 나타납니다config.json의 비밀번호는 mysql의 비밀번호를 넣었고,인터넷에 찾아본 결과 cloud ide같은 경우에는 외부접속권한 설정을 위해서GRANT ALL PRIVILEGES ON . to '사용자 계정'@'%' IDENTIFIED BY '비밀번호'; 로 권한을 부여해주고my.cnf 파일의 bind-address = 127.0.0.1를 주석 처리 해주고포트포워딩을 위해 ip와 외부 포트를 설정해주었습니다.그럼에도 불구하고 같은 오류가 나옵니다.사실 npx sequelize db:create 가 작동하는 원리를 정확히 이해하지 못해서 해결하지 못하고 있는 것 같습니다.config.json에 따라서 스키마를 만들어준다고 설명하셨는데, 기존에 mysql에는 nodejs라는 database가 없었는데, 위 명령어를 입력할 경우에 root 사용자와 password로 권한을 부여받아서, nodejs database를 생성하고, sequelize와 연동하는것이 맞나요? 그렇다면 config.json 파일에 host는 왜 필요한지 모르겠습니다 ㅜㅜ
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
부하테스트 질문 있습니다
안녕하세요 :)교재 525쪽> npx artillery run loadtest.json을 실행해보았는데요 결과에교제처럼 scenarios launchedscenarios completedrequests completedRPS sent scenario countscodes가 뜨지 않습니다. 결과 나타내는 형태가 바뀐 걸까요? 제가 실행한 결과는 아래와 같습니다. Phase started: unnamed (index: 0, duration: 60s) 08:21:09(+0900)--------------------------------------Metrics for period to: 08:21:10(+0900) (width: 0.303s)--------------------------------------http.codes.200: ................................................................ 2http.request_rate: ............................................................. 9/sechttp.requests: ................................................................. 9http.response_time: min: ......................................................................... 74 max: ......................................................................... 126 median: ...................................................................... 74.4 p95: ......................................................................... 74.4 p99: ......................................................................... 74.4http.responses: ................................................................ 2vusers.created: ................................................................ 7vusers.created_by_name.0: ...................................................... 7--------------------------------------Metrics for period to: 08:21:20(+0900) (width: 9.985s)--------------------------------------http.codes.200: ................................................................ 612http.codes.302: ................................................................ 307http.codes.404: ................................................................ 307http.request_rate: ............................................................. 125/sechttp.requests: ................................................................. 1219http.response_time: min: ......................................................................... 2 max: ......................................................................... 198 median: ...................................................................... 7 p95: ......................................................................... 32.8 p99: ......................................................................... 96.6http.responses: ................................................................ 1226vusers.completed: .............................................................. 307vusers.created: ................................................................ 300vusers.created_by_name.0: ...................................................... 300vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 20.9 max: ......................................................................... 506.5 median: ...................................................................... 38.5 p95: ......................................................................... 172.5 p99: ......................................................................... 354.3--------------------------------------Metrics for period to: 08:21:30(+0900) (width: 9.962s)--------------------------------------http.codes.200: ................................................................ 599http.codes.302: ................................................................ 300http.codes.404: ................................................................ 299http.request_rate: ............................................................. 120/sechttp.requests: ................................................................. 1199http.response_time: min: ......................................................................... 2 max: ......................................................................... 59 median: ...................................................................... 6 p95: ......................................................................... 16.9 p99: ......................................................................... 26.8http.responses: ................................................................ 1198vusers.completed: .............................................................. 299vusers.created: ................................................................ 300vusers.created_by_name.0: ...................................................... 300vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 19 max: ......................................................................... 142 median: ...................................................................... 31.5 p95: ......................................................................... 62.2 p99: ......................................................................... 106.7--------------------------------------Metrics for period to: 08:21:40(+0900) (width: 9.996s)--------------------------------------http.codes.200: ................................................................ 600http.codes.302: ................................................................ 300http.codes.404: ................................................................ 301http.request_rate: ............................................................. 120/sechttp.requests: ................................................................. 1201http.response_time: min: ......................................................................... 2 max: ......................................................................... 31 median: ...................................................................... 6 p95: ......................................................................... 16 p99: ......................................................................... 21.1http.responses: ................................................................ 1201vusers.completed: .............................................................. 300vusers.created: ................................................................ 300vusers.created_by_name.0: ...................................................... 300vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 19.7 max: ......................................................................... 81.7 median: ...................................................................... 30.9 p95: ......................................................................... 55.2 p99: ......................................................................... 63.4--------------------------------------Metrics for period to: 08:21:50(+0900) (width: 9.992s)--------------------------------------http.codes.200: ................................................................ 601http.codes.302: ................................................................ 300http.codes.404: ................................................................ 300http.request_rate: ............................................................. 120/sechttp.requests: ................................................................. 1200http.response_time: min: ......................................................................... 2 max: ......................................................................... 28 median: ...................................................................... 6 p95: ......................................................................... 15 p99: ......................................................................... 19.9http.responses: ................................................................ 1201vusers.completed: .............................................................. 301vusers.created: ................................................................ 300vusers.created_by_name.0: ...................................................... 300vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 19.1 max: ......................................................................... 63 median: ...................................................................... 31.5 p95: ......................................................................... 53 p99: ......................................................................... 58.6--------------------------------------Metrics for period to: 08:22:00(+0900) (width: 9.964s)--------------------------------------http.codes.200: ................................................................ 600http.codes.302: ................................................................ 300http.codes.404: ................................................................ 300http.request_rate: ............................................................. 120/sechttp.requests: ................................................................. 1200http.response_time: min: ......................................................................... 2 max: ......................................................................... 31 median: ...................................................................... 7 p95: ......................................................................... 16.9 p99: ......................................................................... 22.9http.responses: ................................................................ 1200vusers.completed: .............................................................. 300vusers.created: ................................................................ 300vusers.created_by_name.0: ...................................................... 300vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 20.5 max: ......................................................................... 78.1 median: ...................................................................... 34.8 p95: ......................................................................... 58.6 p99: ......................................................................... 70.1Phase completed: unnamed (index: 0, duration: 60s) 08:22:09(+0900)--------------------------------------Metrics for period to: 08:22:10(+0900) (width: 9.832s)--------------------------------------http.codes.200: ................................................................ 586http.codes.302: ................................................................ 293http.codes.404: ................................................................ 293http.request_rate: ............................................................. 120/sechttp.requests: ................................................................. 1172http.response_time: min: ......................................................................... 2 max: ......................................................................... 35 median: ...................................................................... 6 p95: ......................................................................... 16 p99: ......................................................................... 22.9http.responses: ................................................................ 1172vusers.completed: .............................................................. 293vusers.created: ................................................................ 293vusers.created_by_name.0: ...................................................... 293vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 20.1 max: ......................................................................... 101.4 median: ...................................................................... 33.5 p95: ......................................................................... 57.4 p99: ......................................................................... 73All VUs finished. Total time: 1 minute, 10 seconds--------------------------------Summary report @ 08:22:15(+0900)--------------------------------http.codes.200: ................................................................ 3600http.codes.302: ................................................................ 1800http.codes.404: ................................................................ 1800http.request_rate: ............................................................. 110/sechttp.requests: ................................................................. 7200http.response_time: min: ......................................................................... 2 max: ......................................................................... 198 median: ...................................................................... 6 p95: ......................................................................... 18 p99: ......................................................................... 32.8http.responses: ................................................................ 7200vusers.completed: .............................................................. 1800vusers.created: ................................................................ 1800vusers.created_by_name.0: ...................................................... 1800vusers.failed: ................................................................. 0vusers.session_length: min: ......................................................................... 19 max: ......................................................................... 506.5 median: ...................................................................... 33.5 p95: ......................................................................... 61 p99: ......................................................................... 169
- 해결됨[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
배열을 json화 시키는 방법
[제로초 강좌 질문 필독 사항입니다]질문에는 여러분에게 도움이 되는 질문과 도움이 되지 않는 질문이 있습니다.도움이 되는 질문을 하는 방법을 알려드립니다.https://www.youtube.com/watch?v=PUKOWrOuC0c0. 숫자 0부터 시작한 이유는 1보다 더 중요한 것이기 때문입니다. 에러가 났을 때 해결을 하는 게 중요한 게 아닙니다. 왜 여러분은 해결을 못 하고 저는 해결을 하는지, 어디서 힌트를 얻은 것이고 어떻게 해결한 건지 그걸 알아가셔야 합니다. 그렇지 못한 질문은 무의미한 질문입니다.1. 에러 메시지를 올리기 전에 반드시 스스로 번역을 해야 합니다. 번역기 요즘 잘 되어 있습니다. 에러 메시지가 에러 해결 단서의 90%를 차지합니다. 한글로 번역만 해도 대부분 풀립니다. 그냥 에러메시지를 올리고(심지어 안 올리는 분도 있습니다. 저는 독심술사가 아닙니다) 해결해달라고 하시면 아무런 도움이 안 됩니다.2. 에러 메시지를 잘라서 올리지 않아야 합니다. 입문자일수록 에러메시지에서 어떤 부분이 가장 중요한 부분인지 모르실 겁니다. 그러니 통째로 올리셔야 합니다.3. 코드도 같이 올려주세요. 다만 코드 전체를 다 올리거나, 깃헙 주소만 띡 던지지는 마세요. 여러분이 "가장" 의심스럽다고 생각하는 코드를 올려주세요.4. 이 강좌를 바탕으로 여러분이 응용을 해보다가 막히는 부분, 여러 개의 선택지 중에서 조언이 필요한 부분, 제 경험이 궁금한 부분에 대한 질문은 대환영입니다. 다만 여러분의 회사 일은 질문하지 마세요.5. 강좌 하나 끝날 때마다 남의 질문들을 읽어보세요. 여러분이 곧 만나게 될 에러들입니다.6. 위에 적은 내용을 명심하지 않으시면 백날 강좌를 봐도(제 강좌가 아니더라도) 실력이 늘지 않고 그냥 코딩쇼 관람 및 한컴타자연습을 한 셈이 될 겁니다.질문을 지웠는데, 선생님께서 답변해주셔서 질문을 복구하는 게 예의같아서 다시 적습니다arr[0]=[arr[1]=1arr[2]=,arr[3]=2arr[4]=]일때이 arr을 json 객체화시키는 방법을 질문드렸었습니다선생님께서 이런 특이한 배열은 문자열화 시키고 json.parse()를 쓰라고 가르쳐주셨습니다
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
안녕하십니까. 미들웨어라는 단어를 많이 언급하셨는데요.
처음으로 산 노드 강의입니다.노드 생각보다 많이 어려운것 같습니다.제목과 같이 미들웨어라는 개념이 안잡혀있습니다.미들웨어 라는 개념이 많이 중요한가요?모르고서는 노드를 이해하는데,많은 제약이 따를까요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
lightsail 배포 후 에러
안녕하세요. 좋은 강의 감사드리며, 도움 좀 부탁드리겠습니다 ㅠ완강 후 개인 프로젝트 작업하면서 라이트세일 배포한 시점에서 실행이 안됩니다.pm2 monit상의 server log는 아무 이상 없음.브라우저 콘솔상에 [The Cross-Origin-Opener-Policy header has been ignored....] 에러 발생무한 로딩 후 ERR_CONNECTION_TIMED_OUT 발생어디를 점검해봐야 할지 감이 안와서 이정도 단서 밖에 제시 못드리내요 ㅠㅠ 예상 가능한 오류가 있으시다면 의견 부탁드립니다 ㅠㅠ[브라우저 콘솔]
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
부하테스트 에러 문의
안녕하세요 522쪽 부하테스트를 공부하고개인 프로젝트에 부하테스트를 artillery로 시도해보았는데요 package.json "dependencies": { "bcrypt": "^5.1.0", "cookie-parser": "^1.4.6", "cors": "^2.8.5", "dotenv": "^16.0.3", "express": "^4.18.2", "express-rate-limit": "^6.6.0", "express-session": "^1.17.3", "jsonwebtoken": "^8.5.1", "morgan": "^1.10.0", "mysql2": "^2.3.3", "passport": "^0.6.0", "passport-kakao": "^1.0.1", "passport-local": "^1.0.0", "sequelize": "^6.25.4", "uuid": "^9.0.0" }, "devDependencies": { "artillery": "^2.0.0-26", "nodemon": "^2.0.20" } // npm i -D artillery// npx artillery quick --count 100 -n 50 http://localhost:3000다음과 같이 나왔는데 구글링을 해도 이유를 잘 모르겠습니다 ㅠ
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
mysql db를 배포하셨는데요
배포하시면서 비밀번호를 기존 코드에 .env랑 동일하게 생성하시고 db도 만드신걸로 아는데이렇다는것은 서버컴퓨터에 새로 mysql db를 만들어버린것인가요? 전 배포후에도 워크벤치로 db내용을 보고 수정하고싶은데 이건 불가능한건가요? 감사합니다
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
웹소켓하고 리액트 연동관련 질문입니다.
노드버드와 노드교과서를 같이 들으면서노드버드에 웹소켓을 적용 시키려고 해봤습니다. 그런데 리액트 Applayout에서 Chatinguser 컴포넌트를 호출하면 Socket io가 연결되게 설정하려고 하는데리액트가 렌더링할때마다 계속해서 socket.io에 connet되는것 같은데 정상인가요?그냥 메인하고 회원가입만 왔다갔다 반복해도 socket.io connet가 계속 연결되어서 한개의 브라우저로 수십개의 socket이 연결이 되어서 과부화가 걸릴것 같은데 혹시 해결법이 채팅방 페이지를 따로 만드는것 외에는 방법이 없나요? 사실 리액트로 웹소켓 채팅방 만드는건 강의 커리큘럼에 없어서 따로 해결해보려고 하루종일 찾아봤는데 도저히 갈피를 못 잡겠어서 망설이다가 질문드립니다 ㅜㅜ 리액트가 렌더링될때마다 socket이 연결되서 수십개씩 연결이 쌓임로그인 시 자동으로 전체 채팅창이 띄워지게 만들려고 했습니다. 아래 useEffect 2개는 접속중인 유저수 띄워볼려고 시도해봤는데 아직 성공하지 못한거여서 별로 신경 안쓰셔도 될것같고socket이 브라우저 접속한번당 한번만 연결할 방법이없나요?
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
스스로 해보기 좋아요, 좋아요 취소 질문
https://www.youtube.com/watch?v=x7H_mIa5rTE제로초님 유튜브 강의 영상에서프론트에 좋아요 좋아요 취소 버튼 만들려고 하는데유튜브 강의영상에는 pug로 나왔있어서-const like = twit %% twit.Liker.map(l => l.id).includes(req.user.id)이부분을 새로 리뉴얼된 강의에 맞게 바꿀려고 하는데{% if not LikerIdList.includes(req.user.id) and twit.User.id !== user.id %}이런식으로 바꿔서 사용하려고 합니다 그래서router.use((req, res, next) => { //res.locals를 통해서 프론트에서 이 변수를 사용할 수 있습니다 res.locals.user = req.user; // req.user 이 있다는것은 로그인을 했다는 뜻 res.locals.followerCount = req.user ? req.user.Followers.length : 0; res.locals.followingCount = req.user ? req.user.Followings.length : 0; res.locals.followerIdList = req.user ? req.user.Followings.map(f => f.id) : []; res.locals.LikerIdList = next(); }); 이 부분을 바꿔야 할꺼 같은데 res.locals.LikerIdList에 무었을 넣어주면 되나요?아무리 고민해도 잘 모르겠네요
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
multer랑 프론트랑 결합하는 과정에서 질문있습니다.
안녕하세요영상을 보다가 프론트랑 결합해서 작은 프로젝트를 만들어 보고있습니다.multer를 적용하고 프론트와 결합하는 과정에서 이미지를 선택하면 콘솔에 지속적으로 500에러가 발생해서 찾아보고 시도했으나 방법을 찾지못해 질문드립니다.백엔드 + 프론트 = Node - v18.7.0프론트 주요 라이브러리 버전 = React-18.2.0, Next = 12.3.1, TypeScript = 4.8.4백엔드의 경우 타입스크립트 미 사용중입니다.백엔드랑 프론트는 별도의 프로젝트로 만들어서 따로 관리중이며 프론트는 리덕스나 리코일 같은 별도 상태관리 라이브러리 미사용중입니다. 백엔드 에러메시지TypeError: Cannot read properties of undefined (reading 'filename') at /Users/Desktop/Temp-toyProject-Backend/Routes/TempPost.js:31:39이며 해당 부분에서 이 부분이 문제가 되는게 아닐까? 하는 부분은 다음과 같습니다.const upload = multer({ storage: multer.diskStorage({ destination(req, file, cb) { cb(null, 'uploads/'); }, filename(req, file, cb) { <<<< ????? const ext = path.extname(file.originalname); cb(null, path.basename(file.originalname, ext) + Date.now() + ext); }, }), limits: { fileSize: 5 * 1024 * 1024 }, }); router.post('/img', upload.single('img'), (req, res) => { res.json({ url: `/img/${req.body.file.filename}` }); // <<< 에러가 나오는 31줄 });multer를 사용한 부분은 강사님의 영상에서 별도로 제작하신 미들웨어 등 몇가지 빼고는 그대로 가지고왔습니다.2.백엔드와 결합되는 프론트 코드const [content, setContent] = useState("") const [img, setImage] = useState<File>() const onChangeTitle = useCallback((e: React.ChangeEvent<HTMLInputElement>) => { setContent(e.target.value) },[]) const onChanges = useCallback((e:React.ChangeEvent<HTMLInputElement>) => { e.preventDefault() const formData = new FormData() formData.append('img', img) axios.post('http://localhost:8005/temppost/img', formData, { // <<< 백엔드 코드의 부분 headers: { 'Content-type': 'multipart/form-data' }, }) .then((res) => { console.log(res.data) }) .catch((error) => { console.error(error) }) },[img]) const onSubmit = useCallback((e:any) => { e.preventDefault() axios.post('http://localhost:8005/temppost', { headers: { 'Content-type': 'multipart/form-data' }, img , content : content }) .then((res) => { console.log(res.data) }) .catch((error) => { console.error(error) }) },[img,content]) return ( <form encType="multipart/form-data" > // 이미지와 content를 입력받고 보내는 부분 <input type="file" name="img" onChange={onChanges} /> <input name="content" type="text" onChange={onChangeTitle} /> <input type="submit" onClick={onSubmit}/> </form> )프론트쪽의 경우 다른걸 참고하긴 했는대 이미지와 관련된 state는 타입을 저렇게 <File>로 줘도 될까요? 항상 영상 잘 보고 있습니다 감사합니다..
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
worker_thread ?? libuv thread??
노드 공부 중에 너무 헷갈려서 조심스레 질문 올려봅니다.질문은 맨 밑에 써있습니다.Libuvnodejs 가 비동기 IO를 처리해주는 놈보통 비동기작업이 발생하면 Libuv에 작업을 위임하고 그작업 내부에서 커널을 이용하거나 커널로 할수 없는 경우 libuv 가 자체적으로 운용하는 thread_pool 내부 thread 이용해서 (기본 4개 ) 작업 처리후 이벤트 리스너 내부 각 틱에 맞는 큐에 전달하고 메인 쓰레드 가 이벤트 루프를 돌면서 적절하게 콜백으로 실행한다.worker_thread노드에서 멀티 쓰레드 방식으로 작업 처리 구글링을 통해 찾은 그림으로 봐서는 노드도 한 실행 프로세스 내부에서 다른 프로그래밍 언어처럼 멀티 쓰레드를 사용한 것 처럼 보입니다.본래 메인 쓰레드 가 하나 이기 때문에 노드는 싱글쓰레드 기반이라고 하는데 ,만약 그림이 맞다면 이걸 깨고 메인 쓰레드를 여러개로 사용하겠다고 이해했습니다.여기서 너무 햇갈립니다.질문 1 : worker_thread 를 통해 생성한 쓰레드랑 Libuv 에서 관리하는 thread pool 안에 쓰레드랑 같은 개념인가요?일단 저는 두개는 다르다고 이해했습니다.worker_thread 를 이용해서 쓰레드를 추가한 행위는 메인 쓰레드를 여러개 사용하겠다는 의미 이고libuv 는 자체적으로 운용하는 쓰레드 풀 이다.질문 2 : 만약 둘이 다르다면 worker_thread 를 3개 생성하면 libuv 에 쓰레드는 12개가 생성되나요?저는 일단 아니라고 생각 합니다.. 그렇다면 thread_pool 도 3개가 생성되고 .. 이러면 너무 무서울것 같습니다. (그럼 만약 thread_pool 제한을 128개로 풀어버리고 worker_thread 를 8개 만들면 ㄷ ㄷ ㄷ )아마 가상적으로 격리시킨다고 이해했습니다.. 결국 (v8엔진과 libuv 는 한개다.. )https://stackoverflow.com/questions/61328960/when-is-better-using-clustering-or-worker-threads좀더 찾아본 바로는 별개 의 것으로 있는것 같네요 ㅠ그럼 정말 3개의 worker_thread 를 사용하면 각 v8 엔진과 libuv 도 생성되나요? 틀린 부분이나 오개념 지적 부탁드립니다 ㅠㅠ
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
멀티도메인 질문 드립니다!
아직 구현 전이기는 한데요!서버 하나에 여러개의 프로젝트를 돌리려면각각의 프로젝트를 pm2로 돌려야 하나요??하나의 pm2에서 관리하는건 아니겠죠??각각의 프로젝트를 돌리고 nginx를 이용하는게 맞는지 궁금합니다!
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
보통 에디터는 어떻게 처리하시나요?!
에디터를 구현해보려고 하는데에디터 내에서 이미지 삽입시 업로드 하는게 보통인가요?노드버드 구현시에도 그랬었어서요!그래도 multer 에서 base64 를 업로드 할수 있나요?아니면 다른 방법을 써야할까요?그리고 제로초님께서 따로 추천하시거나 사용하시는 에디터가 있으실까요??조금 만져봤는데 이미지 구현때문에 머리가 아파서 ㅎㅎ도움 부탁드립니다!!
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
node에서 말하는 non-blocking에 대한 개념 문의
안녕하세요 node에서 말하는 non-blocking에 대한 개념에 대해 문의 드립니다.단원 "1.2 노드의 구성 - 2. 논 블로킹" io 에서 설명하시기를 논 블로킹은 오래 걸리는 함수를 백그라운드로 보내는 방식으로 설명돼 있는데, 우선 non-blocking은 서버측 소켓 구현방식으로 알고 있어서, 제가 알고 있는 기준에서 좀 이해가 안 돼 문의드립니다. 서버측 기준에서 논 블로킹 자체의 의미에서 클라이언트의 io 접속 처리를 work thread에 바로 위임한 후, 뒷 따르는 다음 함수를 처리함에 있어 node 에서 만은 추가적으로 함수의 실행 시간까지 미리 판단해 background 로 병렬 처리까지 한다는 의미인지 문의드립니다.
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
postman 쿠키 오류
nodebird 코드를 수정하여 서버를 구축해보고자 합니다.프론트 코드를 수정할 자신이 없어 우선 프론트 없이 postman으로 서버를 테스트하려고 합니다.추후 프론트 개발을 맡을 친구를 구해 웹페이지를 만들어 보려 하여 넌적스는 따로 설치 하지 않았습니다.(설정도 ejs로 되어 있습니다.)views 폴더는 만들었지만 사용하지 않아 추가하지 않았습니다.현재 회원가입, 로그인 관련 코드를 먼저 개발하고자 하고 nodebird 강의를 들을 때 사용했던 코드들로 제작중에 있습니다.테스트 도중 회원가입, 로그인은 문제가 없으나 로그인 후 포스트맨이 쿠키를 가진 시점부터 모든 동작에 대해 500 에러가 나 문의 드립니다.(쿠키를 삭제하면 회원가입, 로그인 모두 동작하며 쿠키가 없는 상태로 로그아웃 호출 시 isLoggedIn 이 작동하여 로그인하라는 메시지를 반환하는 것 또한 확인했습니다.).env에 COOKIE_SECRET도 저장한 것을 다시 확인했는데 어떤 비밀 문자열을 요구하는지, 왜 오류가 나는지 감을 못잡겠어서 문의 드립니다.
- 미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
크롬 개발자 도구 관련
[제로초 강좌 질문 필독 사항입니다]질문에는 여러분에게 도움이 되는 질문과 도움이 되지 않는 질문이 있습니다.도움이 되는 질문을 하는 방법을 알려드립니다.https://www.youtube.com/watch?v=PUKOWrOuC0c0. 숫자 0부터 시작한 이유는 1보다 더 중요한 것이기 때문입니다. 에러가 났을 때 해결을 하는 게 중요한 게 아닙니다. 왜 여러분은 해결을 못 하고 저는 해결을 하는지, 어디서 힌트를 얻은 것이고 어떻게 해결한 건지 그걸 알아가셔야 합니다. 그렇지 못한 질문은 무의미한 질문입니다.1. 에러 메시지를 올리기 전에 반드시 스스로 번역을 해야 합니다. 번역기 요즘 잘 되어 있습니다. 에러 메시지가 에러 해결 단서의 90%를 차지합니다. 한글로 번역만 해도 대부분 풀립니다. 그냥 에러메시지를 올리고(심지어 안 올리는 분도 있습니다. 저는 독심술사가 아닙니다) 해결해달라고 하시면 아무런 도움이 안 됩니다.2. 에러 메시지를 잘라서 올리지 않아야 합니다. 입문자일수록 에러메시지에서 어떤 부분이 가장 중요한 부분인지 모르실 겁니다. 그러니 통째로 올리셔야 합니다.3. 코드도 같이 올려주세요. 다만 코드 전체를 다 올리거나, 깃헙 주소만 띡 던지지는 마세요. 여러분이 "가장" 의심스럽다고 생각하는 코드를 올려주세요.4. 이 강좌를 바탕으로 여러분이 응용을 해보다가 막히는 부분, 여러 개의 선택지 중에서 조언이 필요한 부분, 제 경험이 궁금한 부분에 대한 질문은 대환영입니다. 다만 여러분의 회사 일은 질문하지 마세요.5. 강좌 하나 끝날 때마다 남의 질문들을 읽어보세요. 여러분이 곧 만나게 될 에러들입니다.6. 위에 적은 내용을 명심하지 않으시면 백날 강좌를 봐도(제 강좌가 아니더라도) 실력이 늘지 않고 그냥 코딩쇼 관람 및 한컴타자연습을 한 셈이 될 겁니다. 4.2 session.js 코드를 실행하였을 때강의에서는 Network-Headers-Query String Parmetersname: 조현영 이라고 뜨는데직접 실습 했을때는 General,Response Header, Request Header이렇게 세개밖에 안뜹니다. Query String Parmeters가 따로 안나옵니다..!소스코드는 깃허브에 있는거 복붙해서 확인한거라 따로 오타가 있지는 않을거같은데컴퓨터마다 다르게 뜨는게 맞는건가요..?application에 session은 잘 나오는 상태입니다.