묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
session[cookies.session] 가 두번 반복된 이유가 궁금합니다.
안녕하세요. 추석 잘 보내셨길 바랍니다. 본문의 코드 중에서cookies.session && session[cookies.session] && session[cookies.session].expires 부분을 보다가 궁금한 점이 있어서 질문 드립니다.무엇 때문에. session[cookies.session]를 두번 쓰고, 그 이후에 expires를 붙인 것인가요?실제로 session[cookies.session].expires를 한번만 쓰면 에러가 납니다. 코드를 리뷰 해봐도 알 수가 없네요. 어차피 같은 값이고, 똑같이 &&을 사용 했는데도 말이죠. 아래는 질문 한 부분의 코드 입니다. else if (cookies.session && session[cookies.session] && session[cookies.session].expires > new Date()) { res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' }); res.end(`${session[cookies.session].name}님 안녕하세요`);이하는 코드 전문입니다. ```const http = require('http');const fs = require('fs');const url = require('url');const qs = require('querystring');const session = {}; function parseCookies(req) {const list = {};const cookieString = req.headers.cookie;if (cookieString) {console.log(cookieString)cookieString.split(';').forEach((cookie) => { const parts = cookie.split('='); //list 짤막하게 나눠진 리스트. for each 마다. list[parts.shift().trim()]/* list가 옵젝이니, [] 형태로 key 값을 주는 거다. = 다음은 value */ = decodeURI(parts.join('='));}); //이말은 뭐냐. 처음의 것만 key 값으로 빼고, 그다음 것들은 a=1 식으로 붙여준다는 이야기다. foreach 마다. cookie의 데이터 형태에 익숙하지 않아서 벌어진 문제다.}return list;}http.createServer((req, res) => {const cookies = parseCookies(req);console.log(cookies)if (req.url.startsWith('/login')) {const { query } = url.parse(req.url);const { name } = qs.parse(query);const expires = new Date();const randomInt = +new Date();expires.setMinutes(expires.getMinutes() + 5);session[randomInt] ={name,expires}res.writeHead(302, { Location: '/', 'Set-Cookie': `session=${encodeURIComponent(randomInt)}; Expires=${expires.toGMTString()}; HttpOnly; Path=/`,});res.end();} else if (cookies.session && session[cookies.session] && session[cookies.session].expires > new Date()) {res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });res.end(${session[cookies.session].name}님 안녕하세요);} else {fs.readFile('./server4.html', (err, data) => {if (err) {throw err;}res.end(data);});}}).listen(8083, () => {console.log('8083번 포트에서 서버 대기중입니다!');});
-
미해결블록체인 기반의 스마트컨트랙트 개발
머클 트리 자료주소 Error 404
제목 그대로입니다
-
미해결직장인을 위한 프로그래밍 입문과 업무자동화 활용
atom 을 쓰는데 오류가 났습니다ㅠㅠ
파이참을 쓰지 않아서 아나콘다 프롬프트에다가pip install python-docx입력해서 설치된 것 같았는데요...atom에서 실행시켜보니Traceback (most recent call last):File "C:UsersminjiDesktopwebpydocx_practice.py", line 1, in from docx import DocumentModuleNotFoundError: No module named 'docx'[Finished in 0.191s]이런 에러가 납니다ㅠㅠ혹시 atom에서는 python-docx를 못 읽어 오나요?아니면 제가 설치를 잘못한 걸까요ㅠㅠ
-
미해결유니티 2D 로그라이크 게임 만들기 [한글자막]
I don't know about this
I find animations folder only in complete-game folder than I erase inside of complete-game's animations folder and do it?
-
미해결만들어 가면서 배우는 JAVA 플레이그라운드
에러가 생깁니다 어떻게 해야 할까요?
명령어를 정확히 써도 계속 에러 밖에 뜨지 않네요...
-
미해결실습 UI 개발로 배워보는 순수 javascript 와 VueJS 개발
이벤트에 @를 붙이는 이유?
emit에전달하는이벤트명에@는꼭붙여야하는지요
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
schemas/index.js 소스 코드 중 궁금한 부분이 있습니다.
index.js 코드를 보면 const mongoose = require('mongoose');module.exports = () =>{ ... require('./user'); require('./comment');}require('./user') require('./comment') 이 부분을 보면 불러서 호출도 하지 않고 참조도 하지 않는데 이 코드가 의미가 있는 코드 인지 궁금합니다.질문을 정리하면 index.js 코드 안에 user와 comment를 require 해준 이유가 궁금합니다.
-
미해결프로그래밍, 데이터 과학을 위한 파이썬 입문
Asterisk 질문드립니다.
강의자료 7분 25초 영역에 관한 질문드립니다.print(type(args)) 이것을 print(type(*args))이렇게 별표하나 추가해서 작성하면 에러가 나온다고하는데<class 'tuple'> 이라고 에러없이 출력이 잘 됩니다.현재 미니콘다3.7 버전을 사용해서그런지 에러가 안나오는데 혹시 python이 3.6에서 3.7로 업그레이드되면서 변경된 사항인지 궁금합니다.
-
미해결파이썬 입문 및 웹 크롤링을 활용한 다양한 자동화 어플리케이션 제작하기
파이썬 후속강의계획은없으신가요?
GO 쪽으로 전향하신건가요? ㅎㅎ 너무 잘가르쳐주셔서 더 깊이있는 중급강의도 듣고싶어서요파이썬 후속강의계획은없으신가요?
-
미해결테스트주도개발(TDD)로 만드는 NodeJS API 서버
curl 명령어 관련
맥 환경에선 curl 명령어를 실행하여 확인가능 하지만,윈도우 cmd 모드에선 curl 명령어를 사용하기 위해서 따로 설치해야 하나요?아니면 윈도우 cmd 모드에서 node index.js 기동하고 나서확인할 수 있는 다른 방법이 있나요?
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
업로드하는 이미지 파일 명에 공백이 있어도 되나요?
예를들어 파일명이 그리스 사진.png면db에 /img/그리스 사진.png 로 저장이 되는데이래도 클라이언트에서 불러오거나 할 때 상관이 없나요?
-
미해결악성코드 분석 중급과정 (유형별분석)
샘플 다운로드하는 곳이 어딘가요?
유튜브 리스트쪽에 있다하셧는데 무슨 소리인질 모르겠습니다. 어디서 다운받나요?
-
미해결입문자를 위한 웹해킹 완벽 실습 with Beebox
강의 자료
강의 피피티 자료를 보면서 복습하고 싶은데 혹시 얻을 수 있을까요?
-
미해결밑바닥 부터 시작하는 머신러닝 입문
[pandas] 중복 제거 관련
안녕하세요, 강의를 듣는 수강생입니다.강의 잘 듣고 있습니다. 중복 제거 관련 질문이 있습니다. 결론적으로 ep.1과 ep.2 열 데이터를 서로 비교하여 중복된 값을 제거하고ep.1과 ep.2 열 데이터를 서로 비교하여 제거된 중복된 데이터의 갯수를 알고 싶습니다. 'pandas 중복 제거' 라는 키워드로 검색해보아도하나의 열을 기준으로 중복 데이터를 제거하는 방법만 나와있고,다중 열을 기준으로 데이터를 제거하는 방법은 나와있지 않아 질문을 남깁니다.
-
미해결생활코딩 - 자바스크립트(JavaScript) 기본
음....그냥 보고 그렇구나 하면 되는거죠?
(사진)
-
미해결Kotlin Android부터 Firebase 서버 그리고 훌륭한 Chatbot 만들기
혹시 답변 부분에 하이퍼링크 추가할 수 있는 방법은 아녜 없는건가요?
답변 부분에 유투브 링크를 넣어서 사용자가 그 링크로 넘어갈 수 있게 구현하고 싶습니다 그래서 다이얼로그플로우 response 부분에 html 태그를 넣어서 추가해봐도 링크인걸 인식을 못하더라구요... 저도 똑같이 안드로이드 앱으로 만든거라 페북 메세지 연동 이런것도 못할듯 싶은데ㅠㅠ 해결 방법이 있을까요?
-
미해결아이폰 앱 개발 입문 2편
Failed to create provisioning profile
Failed to create provisioning profile 이거랑No profiles for 'kr.yourcompany.logging' were fournd 가 계속 떠요분명히 Team 에는 제 아이디가 들어가 있고 말씀처럼 번들 아이덴티파이어에이름도 맨 끝에 바꿔 봤는데 계속 문제가 발생합니다.(끝에 logging3 이나 logging2처럼)해결 방법을 가르쳐주세요
-
미해결
교재없이 강의듣던 학생입니다.
(사진)
-
미해결
교재없이 강의듣던 학생입니다.
국민대학교 소프트웨어 학생은 인프런을 무료로 사용할 수 있다는 말을 듣고 학생인증을 하였습니다. 학생인증은 매주 평일 정오에 확인된다고 하셨는데. 이미 정오가 지났는데 확인이 된건지 안된건지 잘 모르겠습니다. 학생인증이 되었는지 어떻게 확인하고, 인증이 되었다면 그냥 듣고싶은 강의를 수강하면 되는건가요?
-
미해결누구나 다루기 쉬운 Vue.js 입문 - 3시간 안에 배우기
전역-지역 컴포넌트 충돌시
같은 태그에 global component와 local component를 동시에 등록하면local만 나오는데(global은 안나옴) (충돌되지 않게 다른 태그를 입력하면 다른 게 나옴) 어떤 순서가 있는건가요?Vue.component('todo-footer',{ template:This is another child global component`});var cmp = {template: <p>This is another child local component</p>};var app = new Vue({el: '#app',data: {message : 'This is a parent component'},components : {'todo-footer': cmp}});`이경우에 결과물에서This is another child global component 는 안보이고This is another child local component가 보입니다. (todo-footer 태그를 두 개 등록해도 동일)