묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨탄탄한 백엔드 NestJS, 기초부터 심화까지
Pipe와 middleware와의 차이가 무엇일까요 ?
Pipe와 Middleware 둘다 클라이언트로부터 데이터를 받는다면, 데이터를 중간중간 가공하여 처리하는것으로 이해하고있습니다.허나 Pipe는 주로 유효성검사같은 타당성 검사에 촛점을 맞춘것일까요 ?
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
getResponse() 메소드 질문입니다.
해당 강의에서 'api broken' 메세지를 내보낼때, throw가 에러를 인위적으로 에러를 던지는것은 알고있으나, 여기서 던진 에러를 어떻게 받아서 'api broken'을 출력시키는지 감이 올듯 안올듯 한데,exception 안에 getResponse()라는 메소드가 그 던진 에러를 받아주는 역할을 하는게 맞는것일까요 ?
-
미해결2025 정보처리기사 필기
c언어 int의 크기가 2byte가 맞나요?
c sizeof 함수를 써도 4가 나오고다른 커뮤니티 다 찾아봐도 4가 나오는데 ppt랑 강사님은 2byte라고 강의해주셔서 헷갈리네요
-
해결됨기출로 대비하는 개발자 전공면접 [CS 완전정복]
세션 삭제 관련 질문
강의에서 다음과 같이 설명하셨습니다.세션은 서버에 저장된다.브라우저(클라이언트) 종료 시점에 세션은 삭제된다세션의 저장 장소는 서버인데 어떻게 클라이언트의 종료 시점에 삭제될 수 있는 것인가요?HTTP 는 connectionsless 하기 때문에 클라이언트의 종료 시점을 서버가 파악할 수 없지 않나요? 쿠키 안에 세션 ID를 저장한다고 하였는데 브라우저 종료 시점에서 이 세션ID만 삭제하는 것인가요?만약 이게 맞다면 삭제된 세션ID에 해당하는 서버에 저장된 세션은 언제까지 유지되나요?
-
해결됨기출로 대비하는 개발자 전공면접 [CS 완전정복]
GET 조회 결과 캐싱
안녕하세요. 두 가지 질문 드립니다.GET method의 경우 조회 결과에 대한 캐싱을 통해 이후의 동일 요청에 대해서는 서버의 부하를 줄일 수 있다고 설명해주셨는데요.1. 이 캐싱된 결과의 유효 기간은 언제까지인가요? HTTP 연결이 끊어져도 캐싱 결과는 계속 유지되는지, 그렇다면 언제까지 유지되는지 궁금합니다.그리고 처음 GET method로 조회한 결과가 나중에 다른 요청으로 인해 갱신이 될 수도 있을 텐데요.2. 그렇다면 그 이후 동일 요청이 들어왔을 때 브라우저에 캐싱되어있는 이전 조회 결과가 최신 데이터라는 것을 어떻게 보장 받을 수 있나요?
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
파워포인트자료
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 파워포인트 자료는 어디서 다운받을 수 있나요?감사합니다.
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
사진 자동화 문의입니다.
제가 강사님의 블로그를 보고 만들었습니다.제가 생각하는 방법은 표의 이름을 사진의 이름과 일치시켜서 표에 넣으려고 했는데 오류가 나네여import win32com.client as win32 import pandas as pd import numpy as np import os import pyautogui from tkinter import Tk from tkinter.filedialog import askopenfilenames def 한글_시작(): hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject") hwp.XHwpWindows.Item(0).Visible = True hwp.RegisterModule("FilePathCheckDLL", "FilePathCheckerModule") return hwp file_list = os.listdir("e:/python22/inflearn_hangeul/img") root = Tk() # 이미지선택창 열기 imagelist = askopenfilenames() root.destroy() # 이미지선택창 닫기 BASE_DIR = imagelist[0].rsplit("/", maxsplit=1)[0] # 이미지리스트에서 경로 추출 imagelist = [i.rsplit("/", maxsplit=1)[1] for i in imagelist] # 이미지리스트에서 파일명만 남김 print(imagelist) 표_리스트 = list(set([i.split(".")[0] for i in imagelist])) 표_리스트.sort() print(표_리스트) hwp = 한글_시작() hwp.Open("e:/python22/inflearn_hangeul/사업개요서_그림작성자동화서식.hwp") hwp.Run("CopyPage") for _ in range(9): hwp.Run("PastePage") for idx, content in enumerate(표_리스트): hwp.HAction.GetDefault("TablePropertyDialog", hwp.HParameterSet.HShapeObject.HSet) hwp.HParameterSet.HShapeObject.ShapeTableCell.Editable = 1 hwp.HParameterSet.HShapeObject.ShapeTableCell.CellCtrlData.name = content print(content) hwp.HAction.Execute("TablePropertyDialog", hwp.HParameterSet.HShapeObject.HSet) for j, content in enumerate(표_리스트): hwp.MoveToField(content) # 해당 필드로 이동 hwp.InsertPicture(os.path.join(BASE_DIR, f"{content}.png"), Embedded=True, sizeoption=2) # 이미지 삽입40번째 줄에서 오류가 나구요pywintypes.com_error: (-2147417851, '서버에서 예외 오류가 발생했습니다.', None, None)
-
해결됨Jenkins를 이용한 CI/CD Pipeline 구축
Ansible 컨테이너 삭제 관련 문의
Ansible 컨테이너 삭제를 하고 싶은데삭제를 해도 자동으로 다시 생성이 되어버립니다이미지 역시 삭제를 하려고 해도 컨테이너가 삭제되지 않아서 삭제되지 않습니다docker rmi -f 이미지를 강제로 지우려고 해도 안됨삭제 방법을 알고 싶습니다
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
Persistence Connection과 Connection:close 헤더
안녕하세요 :)강의 들으면서 RFC 7230 문서를 함께 읽어보던 중, Persistence Connection 연결이 종료되는 기준에 대해 궁금한 점이 생겼습니다.Persistence Connection이 종료되는 기준이 궁금해져서 본 강의의 커뮤니티에 질문을 검색했을 때, [Persistence Connection 에는 약 60초의 타임아웃이 있다.](https://www.inflearn.com/questions/169548/persistence-connection-%EC%97%B0%EA%B2%B0-%EC%9C%A0%EC%A7%80%EC%99%80-%EC%A2%85%EB%A3%8C-%ED%8C%90%EB%8B%A8%EC%9D%98-%EC%A1%B0%EA%B1%B4)라는 답변을 봤습니다.그래서 "60초의 대기 시간 후에도 클라이언트에서 요청이 없으면 서버가 자동으로 연결을 종료하는구나!" 라고 이해했었는데요,공식 문서의 Connection 부분에는 [Persistent Connection은 클라이언트, 혹은 서버에서 헤더에 Connection:close를 명시하면 종료된다.](https://datatracker.ietf.org/doc/html/rfc7230#section-6.3) 라는 말이 있더라구요.그리고 Timeout 에 대해서는The use of persistent connections places no requirements on the length (or existence) of this timeout for either the client or the server.라는 말이 있는데, 저는 이 말을 "Persistent Connection은 timeout을 가지고 있지 않다." 라는 의미로 이해했습니다.여기에서 생긴 제 궁금증은 다음과 같습니다.Persistent Connection은 "요청과 응답이 계속 오가는 상황에서는" Connection:close에 의해 종료되는 것이 맞을까요?1번의 조건을 전제로 하고, connection이 장기간 idle 상태로 있는 경우에 connection을 낭비하지 않기 위해 timeout 후에 서버가 connection을 종료하는 것인가요, 아니면 계속해서 connection을 열어두는 것인가요? 강의 잘 듣고 있습니다. 감사합니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
이동 동기화 중에서 딜레이후 동기화 처리
실무에 가깝게 적용할만한 캐릭터간 이동 동기화 중에서 딜레이후 동기화 처리에 대한 참고할만한 이론이나 문서 같은것이 있을까요? 게임 장르는 존 방식이고 한 방에 최대 100명 이하? 정도 될것 같은데요환경은 모바일이고요 약.. 서버에서 1초에 4~8번 정도(정확히 아직 1초에 몇번 보내는지는 모릅니다)의 이동관련 패킷을 TCP나 UDP로 보낸다고 가정할 경우 일정 시간 이동 관련 위치 값을 수집해서 보간 처리 해볼까 하는데 언리얼 데디케이트 서버에서 어떻게 해야 할지 좀 막막한것 같은데 관련된 문서나 방식등이 있을까요?루키스님 강의 중 C++ 쪽 서버강의에서 이미 강의는 어느정도 듣긴했지만 이동 관련된것이 없는것 같아서 질문 남깁니다답변좀 부탁드리겠습니다!
-
미해결실전! Querydsl
BooleanExpression을 이용해서 쿼리 검색
안녕하세요! BooleanExpression으로 메소드를 만들어 필터링 기능을 구현중입니다.Repository에서 이런식으로 BooleanExpression 메소드를 and으로 엮었습니다.return queryFactory.selectFrom(member) .innerJoin(member.activities, activities) .where(checkActivityContainsPart(part), checkMemberBelongToTeam(team)) private BooleanExpression checkActivityContainsPart(String part) { if (part == null) return null; return QMemberSoptActivity.memberActivity.part.contains(part); } private BooleanExpression checkMemberBelongToTeam(String team) { if (team == null) return null; switch (team) { case "임원진" -> { return QMemberSoptActivity.memberActivity.part.contains("회장") .or(QMemberSoptActivity.memberActivity.part.contains("부회장")); // 회장, 부회장, ~파트장, 운영 팀장, 미디어 팀장 } case "운영팀" -> { return QMemberSoptActivity.memberActivity.part.contains("총무"); // 회장, 부회장, ~파트장, 운영 팀장, 미디어 팀장 } default -> { return null; } } } memberActivity에는 파트원인지, 회장인지에 대한 활동 정보가 들어있습니다.어떤 기수에서는 회장을, 어떤 기수에서는 파트원을 했을 경우가 있습니다.이 모든 경우에 맞는 회원을 찾는 것이목표인데, 조건이 and( ) and( )으로 엮어지면서, 메소드checkActivityContainsPart()와 checkMeberBelongToTeam() 조건을 모두 포함하는 경우를 찾지 못합니다. (하나하나 조건을 줄때는 구해지지만, 둘다 모두 필터링 걸었을때는 찾아지지 않아요..)이를 가독성 있게 분리하면서 해결할 수 잇는 방법이 있을까요?원하는 쿼리는 (activities.part like ? and activities.part like ? or activities.part like ? or activities.part like ?) 이렇게 다 엮이는 것입니다!
-
해결됨토비의 스프링 부트 - 이해와 원리
@Value에 대해서 질문있습니다.
@MyAutoConfiguration class SampleBeanConfigClass { @Value("${name}") String name; @Bean SampleBean sampleBean(){ System.out.println("sampleBean name = "+name); } }@Configuration class UserConfigClass { @Value("${name}") String name; public UserConfigClass(){ System.out.println("UserConfigClass name = "+name); } @Bean public UserConfigBean userConfigBean(){ System.out.println("UserConfigBean name = "+name); return new UserConfigBean(); } }//application.properties name = springsampleBean name = ${name} UserConfigClass name = null UserConfigBean name = spring아직 PropertySourcesPlaceholderConfigurer는 MyAutoConfiguration으로 등록하지 않은 상태입니다. 그런데 @Value의 위치에 따라null, spring, ${name} 이렇게 각각 나오더라구요이렇게 value의 위치마다 다르게 작동하는 이유가 있을까요..?
-
해결됨만들면서 배우는 프론트엔드 DO IT 코딩 (Next.js, Typescript)
thunder client로 get 요청시 무한로딩
안녕하세요. thunder client로 get 요청시 무한로딩이 됩니다.localhost:3000/api/hello에 대한 요청이 되지 않습니다.다른 open api 요청을 쏴봤는데요. 그건 됩니다.혹시 원인이 무엇일까요?개발 환경은 실행중입니다.폴더 구조입니다. 아래는 코드입니다.// hello.ts // Next.js API route support: https://nextjs.org/docs/api-routes/introduction import { NextApiRequest, NextApiResponse } from 'next'; import FirebaseAdmin from '@/models/firebase_admin'; export default function handler(_: NextApiRequest, res: NextApiResponse) { FirebaseAdmin.getInstance().Firebase.collection('test'); res.status(200).json({ name: 'John Doe' }); } // firebase_admin.ts import * as admin from 'firebase-admin'; interface Config { credential: { privateKey: string; clientEmail: string; projectId: string; }; } /** 싱글톤 패턴을 이용해서 어디서든 같은 인스턴스를 불러낼 수 있도록 한다. */ export default class FirebaseAdmin { public static instance: FirebaseAdmin; /** 초기화 여부 */ private init = false; /** 인스턴스를 반환하는 메서드 */ public static getInstance(): FirebaseAdmin { if (FirebaseAdmin.instance === undefined || FirebaseAdmin.instance === null) { /** 초기화 진행 */ FirebaseAdmin.instance = new FirebaseAdmin(); /** 환경을 초기화한다. */ FirebaseAdmin.instance.bootstrap(); } return FirebaseAdmin.instance; } /** 환경을 초기화할 때 사용할 메서드 */ private bootstrap(): void { /** 등록되어 있는 앱의 갯수가 0이 아니어야 앱이 존재함을 의미한다. */ const haveApp = admin.apps.length !== 0; if (haveApp) { this.init = true; return; } /** config를 활용해서 초기화한다. */ const config: Config = { credential: { /** process.env.로 환경변수에 접근하여 각 값들을 받아온다. * 각 갑들은 undefined일 수 있으므로, 값이 없을 경우 빈 문자열을 할당한다. */ projectId: process.env.projectid || '', clientEmail: process.env.clientEmail || '', /** * privateKey는 원래 개행이 들어간 여러 줄 짜리 텍스트인데, 반환할 때는 json에서는 그렇게 표현할 수 없기 때문에 한 줄이 된다. * 그 한줄짜리 json을 원래대로 개행이 들어가도록 임의로 다시 개행문자를 넣어주는 것이다. */ privateKey: (process.env.privatekey || '').replace(/\\n/g, '\n'), }, }; admin.initializeApp({ credential: admin.credential.cert(config.credential) }); console.info('bootstrap firebase admin'); } /** firestore를 반환 */ public get Firebase(): FirebaseFirestore.Firestore { if (this.init === false) { this.bootstrap(); } return admin.firestore(); } public get Auth(): admin.auth.Auth { if (this.init === false) { this.bootstrap(); } return admin.auth(); } }
-
미해결게임 수학의 이해
이득우의 언리얼 프로그래밍 Part2 개강일
안녕하세요 혹시이득우의 언리얼 프로그래밍 Part2 개강예정일을 알수있을까요?
-
미해결UX/UI 시작하기 : Figma 입문 (Inflearn Original)
constraints에서 상단 스크롤 고정을 할 수 있는 체크 박스 가 보이지 않아요.
constraints에서 상단 스크롤 고정을 할 수 있는 체크 박스 가 보이지 않아요.ㅠ
-
해결됨[입문자를 위한 UE5] Part1. 언리얼 엔진 블루프린트
캐스트 오버헤드 질문
상위 클래스를 특정 하위 클래스로 형변환을 할 때, 캐스트의 성공 여부를 알 수 있는데, 그렇단 의미는 BP에서의 캐스팅은 기본적으로 다이나믹 캐스트로 이루어지나요? 만약 맞다면, 캐스팅이라는 작업이 RTTI로 인한 성능에 저하가 있나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
psum[0] 값이 0인이유
안녕하세요 선생님 수업 잘 듣고 있습니다! 혹시 뇌를 잃어버린 승철이 문제에서 psum[0]값을 정의하지 않았음에도 0인 이유는 무엇인가요? 예전에는 값을 정의하지 않으면 랜덤한 값이 나온다고 어디서 들었던것 같은데 print를 해봐도 0이나와서 신기해서 여쭤봅니다. 강의 잘 듣고 있습니다 감사합니다!
-
미해결홍정모의 따라하며 배우는 C언어
[5.1 반복 루프] goto문 결과 질문
5.1 강의의 6:11초쯤에서 goto문의 출력 결과로 1~9까지만 나오고 10은 안 나왔는데 나중에 설명한다고 하셨는데 설명을 안 하셔서 질문 남깁니다.교수님이 작성하신 코드에서는 n이 10일 때 printf를 안 하고 바로 goto out;이 실행되기 때문에 결과가 9까지 출력되는 것 맞나요?goto문으로 1~10까지 출력되는 반복문을 만들려면 n == 10이 아니라 n == 11로 써야하는 것 맞을까요?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃헙 권한요청 부탁드립니다.
인프런 아이디 : jongseungim5348@gmail.com인프런 이메일 : jongseungim5348@gmail.com깃헙 아이디 : jongseungim5348@gmail.com깃헙 Username : limjongseung
-
미해결스프링 배치
@JobScope JobParmeter Binding 질문
안녕하세요. @JobScope에 대해서 궁금한게 생겨서요!@Jobscope 를 쓰면 갖는 이점에 대해서는 이해했습니다. 웹어플리케이션이 실행될 때, Job Bean 객체에는 Scope의 JDKProxy 또는 CGLibProxy가 주입되는 것을 이해했고 Step 메소드 실행 시, 실제 Step 객체가 주입되는 것을 이해했습니다.그러므로 여러 스레드 ( 병렬 처리 ) 가 요청에 대한 처리를 할 때, thread safe에 대한 이점도 있을 거고 동시성에도 이점이 있을 거라고 생각됩니다. 여기서 궁금한게, @Value JobParmeters를 바인딩 하는 부분이 궁금한데요.질문 1. 이 JobParmeters는 그럼 Job에서 설정한 여러 Jobpameters 중 꼭 한가지 key값이여야만 하는 걸까요? 가령, name, requestDate 라한다면 둘 중 하나를 선택해도 무방한거죠? 두개는 안될까요?2. 당연한 말이겠지만 여러 Job들에서 다른 Step을 공유하기 위해선 이 Jobparmeter를 정적인 변수보다는 requestDate와 같은 yyyyhhmm ss 같은 변수를 사용하는 것이 좋겠죠?감사합니다!