묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결취미로 해킹#3(WebGoat)
SQL 인젝션 advance 마지막강의에
나오는 첫번째 방법 혹시 따로 알려주실 수 있나요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
multer UTF-8 지원관련 질문입니다.
안녕하세요. 제로초님 강의 잘 듣고있습니다.해당 강의를 듣고 구현했는데 한글파일이 다음과 같이 특수문자로 변환되어 저장되더라고요6._한우물회(함양집).jpg 6._íì°ë¬¼í(í¨ìì§)_1666847920317.jpg그래서 어디에서 파일명이 변경됬는지 확인해보니 다음과 같이 multer에서 변환이 되고있었습니다. 프론트에서 폼데이터 출력결과// front/imageupload const onChangeImages = useCallback((e) => { const imageFormData = new FormData(); imageFileList.forEach((f) => { imageFormData.append('image', f.originFileObj); }); for (let key of imageFormData.keys()) { console.log(key, ":", imageFormData.get(key)); } dispatch({ type: UPLOAD_IMAGES_REQUEST, data: imageFormData, }); }, []); 서버에서 출력결과const upload = multer({ storage: multer.diskStorage({ destination(req, file, done) { done(null, 'uploads'); }, filename(req, file, done) { console.log(`file이름은 ${file.originalname}`); const ext = path.extname(file.originalname); const basename = path.basename(file.originalname, ext); done(null, basename + '_' + new Date().getTime() + ext); }, }), limits: { fileSize: 20 * 1024 * 1024 },file이름은 6._íì°ë¬¼í(í¨ìì§).jpg 해당문제를 해결하려고 encodeURIComponent, decodeURIComponent를 사용해봤는데 다음과 같이 문제는 해결되지 않았습니다.const upload = multer({ storage: multer.diskStorage({ destination(req, file, done) { done(null, 'uploads'); }, filename(req, file, done) { console.log(`file이름은 ${file.originalname}`); console.log(`변환된 이름은 ${encodeURIComponent(file.originalname)}`); console.log(`변환된 이름은 ${decodeURIComponent(file.originalname)}`); const ext = path.extname(file.originalname); const basename = path.basename(file.originalname, ext); done(null, basename + '_' + new Date().getTime() + ext); }, }), limits: { fileSize: 20 * 1024 * 1024 }, });file이름은 6._íì°ë¬¼í(í¨ìì§).jpg 변환된 이름은 6._%C3%AD%C2%95%C2%9C%C3%AC%C2%9A%C2%B0%C3%AB%C2%AC%C2%BC%C3%AD%C2%9A%C2%8C(%C3%AD%C2%95%C2%A8%C3%AC%C2%96%C2%91%C3%AC%C2%A7%C2%91).jpg 변환된 이름은 6._íì°ë¬¼í(í¨ìì§).jpg 참고로 uploads파일에도 다음과 같이 파일명이 특수문자로 변경되어 저장되고 있습니다. 이 문제 혹시 multer에서 UTF-8을 지원하지 않아서 발생하는 문제인가요?혹은 다른 이유가 있다면 위 문제에 대한 해결방법을 알 수 있을까요?
-
해결됨(UPDATED) Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
model.predict에 특정 user id로 상위 movie 5개 출력?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 추천시스템을 다양한 방법을 통하여 쉽게 설명해 주셔서 감사합니다.질문과 같이, compile -> fit 해서 생성된 model에특정 user id 를 입력하여 추천된 상위 movie 5개를 출력해보려고 합니다. 강의 예제의 아래 부분의 user_id와 movie_id 그리고 직업을 입력해서해당 predictions 값에서 상위 movie를 가져올 수 있지 않을까 생각중 입니다. predictions = model.predict([user_ids, movie_ids, user_occ]) + mu 문제는, 딱 여기서 막혔습니다. 예제에는 6개의 사용자, 영화, 직업 받아서Predictions: [[4.0556927] [3.5347672] [2.4461157] [4.1715736] [3.9802952] [3.9247046]] 이렇게 보여지는 것같아서, 저것을 어떻게 사용해서, 영화 목록 5개면 5개 ,10개면 10개를 가져올 수 있을까요?
-
미해결파이썬 무료 강의 (활용편3) - 웹 스크래핑 (5시간)
bs4 활용 2-1 질문합니다.
코드 실행시 정보가 오지 않고 반응이 없습니다!
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
안녕하세요. 강의자료 요청드립니다.
안녕하세요. 강의 자료 요청드립니다.cayraban@gmail.com감사합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
기존 DB의 테이블과 jpa로 만들어진 테이블과 관계 맺기
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이미 실무에서 사용중인 데이터베이스가 있습니다. 이 DB 안에는 기 생성된 테이블들이 있구요. JPA를 활용해 기존 DB에 접근해 필요한 테이블들을 추가하고 엔티티 매핑하는 작업들은 잘 되었는데요. 문제는 기존 DB의 "User" 테이블과 제가 새로 만든 테이블의 관계를 맺어주는 것이 가능한건가 해서요. [tb_user] <- 기존에 존재하던 테이블 (아래는 스키마)user_id : String : "S00001"name : String : "홍길동"age : int : 30[tb_user_history] <- 새로 등록한 테이블@Entity @Data @Table(name="tb_user_history") public class UserHistory { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name="user_history_id") private Long id; //연관 관계를 맺어주는게 가능한가요?????? private String user_id; }제 프로그램상에서 생성하고 관리하는 테이블이라면 @ManyToOne, @JoinColumn을 이용해서 조인과 외래키 생성 작업을 해줄수있는데 지금과 같은 경우에서는 어떤식으로 가능할까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
rabbit mq가 ms(configservice, apigatway ,userservice) 들이랑 connection을 맺을 수 있는 조건?
안녕하세요 선생님제목처럼 어떤 조건을 갖춰야 ms가 rabbit mq와 connection을 맺는지 궁금합니다.제가 # rabbitmq: # host: localhost # port: 5672 # username: guest # password: guest이것 도 지우고 management include에서 busrefresh도 지워서 결국에는 pom.xml에 dependency 만 남아있는데 다 껐다켜도(ms랑 rabbitmq도) 그래도 ms들이 rabbitmq와connection을 새로 잘 맺는것을 확인 할 수 있었습니다.https://spring.io/guides/gs/messaging-rabbitmq/여기에서 springboot는 Spring Boot automatically creates a connection factory and a RabbitTemplate, reducing the amount of code you have to write.이러하다는데 이래서 depdency만 추가하면 알아서 척척 연결이 되는 것이고 이렇게 사용을 해도 괜찮을 까요?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
cannot resolve property
application.yml 파일에서 글로벌 필터의 속성 ( baseMessage, preLogger, postLogger) 는 인식하는데 로깅 필터의 속성은 인식하지 못해 cannot resolve property 에러가 납니다. 왜인지 이유를 알 수 없어 질문드립니다.LoggingFilter.java 파일입니다.package com.todaypills.apigatewayservice.Filter; import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.gateway.filter.GatewayFilter; import org.springframework.cloud.gateway.filter.OrderedGatewayFilter; import org.springframework.cloud.gateway.filter.factory.AbstractGatewayFilterFactory; import org.springframework.core.Ordered; import org.springframework.http.server.reactive.ServerHttpRequest; import org.springframework.http.server.reactive.ServerHttpResponse; import org.springframework.stereotype.Component; import reactor.core.publisher.Mono; @Slf4j //for print log @Component /**커스텀 필터의 일종임, 단지 로그를 찍기 위한 필터이므로 이름을 Logging 이라고 지은 것*/ public class LoggingFilter extends AbstractGatewayFilterFactory<LoggingFilter.Config> { public LoggingFilter() { super(Config.class); } @Override public GatewayFilter apply(Config config) { /** * 위쪽 주석부분은 람다 표현식으로 바로 리턴한 것이고 이것은 람다를 사용하지 않고 리턴한 것임, * 따라서 인스턴스부터 만들어주어야 하고 GatewayFilter는 인터페이스이기 때문에 직접 인스턴스를 생성할 수는 없고, OrderedGatewayFilter() 를 이용하여 인스턴스를 만들어주어야함 * */ GatewayFilter filter = new OrderedGatewayFilter(((exchange, chain) -> { /** exchange: request와 response 객체를 얻기 위함 */ ServerHttpRequest request = exchange.getRequest(); ServerHttpResponse response = exchange.getResponse(); log.info("logging filter: request id -> {}", config.getBaseMessage()); if(config.isPreLogger()){ log.info("logging pre filter start: request id -> {}", request.getId()); } return chain.filter(exchange).then(Mono.fromRunnable(() -> { if(config.isPostLogger()){ //Mono 객체: 웹플럭스(스프링5)에서 지원하는 기능으로 비동기방식의 서버에서 단일값을 전달할 때 모노타입으로 전달 log.info("logging post filter end: response code -> {}", response.getStatusCode()); } })); }), Ordered.HIGHEST_PRECEDENCE); //HIGHEST_PRECEDENCE 는 적용할 필터가 여러개일 때 어느것이 먼저 실행될지 우선순위를 부여함 return filter; } @Data // setter getter 함수 생성 (isPreLogger(), isPostLogger() 등) public static class Config{ // 여기에 configuration 이 있다면 삽입 private String baseMessage; private boolean preLogger; private boolean postLogger; } } application.yml 파일입니다.server: port: 8000 eureka: client: register-with-eureka: true fetch-registry: true service-url: defaultZone: http://localhost:8761/eureka spring: application: name: apigateway-service cloud: gateway: default-filters: - name: GlobalFilter args: # 우리가 정의한 변수 baseMessage: 게이트웨이 글로벌 필터입니다. preLogger: true #prefilter의 유무 postLogger: true routes: #FilterConfig의 라우팅 정보를 yml 파일로도 설정할 수 있음 - id: nutrients-service uri: http://localhost:8081/ predicates: - Path=/nutrients-service/** filters: # - AddRequestHeader=nutrients-request, nutrients-request-heaer-value # - AddResponseHeader=nutrients-response, nutrients-response-header-value - name: CustomFilter - name: LoggingFilter args: baseMessage: 커스텀 로깅 필터입니다. preLogger: true postLogger: true
-
미해결실전! Querydsl
질문드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]기초적인거라서 예전에 강의를 전부 보고 다시 찾으려고 하니 잘 못찾겠습니다.. (있었는지도 의문?)select 시에 getter 로 가공을 거치는 방법이 있나요?jpaQueryFactory.select( Projections.bean( UserHistoryOutput.Chart.class, userHistory.bodyHeat.avg().divide(10).floatValue().as("bodyHeat"),public class UserHistory extends BaseCreateTimeEntity { ..... public Float getBodyHeat() { return Optional.ofNullable(bodyHeat).orElse(0f) / 10f; } userHistory 에서 getter를 이용하여 뽑아올 경우 divde 10을 해주고 있습니다하지만 querydsl 을 이용해서 하면 순수 데이터를 가공없이 그대로 뽑아오던데dto를 통해서 뽑아오는 방법이 있을까요?
-
미해결스프링부트 시큐리티 & JWT 강의
httpBasic방식
httpBasic방식은 authorization에 id와 pw를 넣어서 보낸다고 하셨는데 그럼 이전강의에서는 httpBasic방식을 disable안하셨으니까 이전강의에서는 id와 pw를 넣어서 보냈다는 건데 그 말이 로그인시를 말하는 건가요?? 로그인이 한번되면 sessionId로 확인하면 되니까 로그인시에만id와 pw을 보낸다는 건지 궁금합니다.
-
미해결스프링 핵심 원리 - 기본편
assertThrows에 대해 구글링 해서 정리해봤는데 이렇게 이해하는게 맞을까요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]@Test@DisplayName("빈 이름으로 조회X")void findBeanByNameX() {//MemberService xxxxx = ac.getBean("xxxxx", MemberService.class);Assertions.assertThrows(NoSuchBeanDefinitionException.class,() -> ac.getBean("xxxxx", MemberService.class));}
-
미해결홍정모의 따라하며 배우는 C언어
잘 모르겠어요
왜 Enter next integer (q to quit) : 두 번 출력 되고 Sum 값이 이상하게 출력 되는지 잘 모르겠습니다..#include <stdio.h> int main() { int sum = 0; char input = ' '; printf("Enter an integer (q to quit) : "); scanf("%c", &input); if (input != 'q') { sum += (int)(input - 48); while (1) { printf("Enter next integer (q to quit) : "); scanf("%c", &input); if (input == 'q') break; sum += (int)(input - 48); } } printf("Sum = %d", sum); return 0; }
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
임베디드 타입은 비교 지원하지 않는다는데 왜 비교가 되는걸까요
책 399페이지를 보면 비교를 지원하지 않는다고 되어있는데 제코드에서는 비교연산이 되는 것 같아요.. 왜그러는걸까요 제가 잘못이해한건가요?
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
설치가 안되어서 강의진행을 못하고있어요...
이런 오류가 떠서sudo chown -R $USER 위에에러뜬경로위 처럼sudo chown -R $USER '/usr/local/lib/node_modules/create-react-app'이렇게 입력을 해도 계속 오류가나는데 어떻게해야하나요ㅠㅠ
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
index.js 파일명이 같은 파일이 폴더마다 있는데 혹시 이유가 있나요?
안녕하세요.제가 강의 정주행 중인데 궁금한게 생겨서요.index.js 파일이 routes 폴더에도 있구 api 폴더에도 있는데 state 폴더에도 만드셔서.. 같은 파일명으로 여러개 있으면 햇갈리지 않나 해서요.뒤쪽에 강의 따라 듣다보면 설명이 나오는지 궁금합니다.아니면 네이밍 규칙 같은게 있는것인가요? (관습적이라던가.. 오픈소스가 주로 그렇다던가.. 공식사이트 샘플소스가 그렇다던가..)아니면 경험적으로 동일파일명으로 하는게 좋다거나..조언 부탁드립니다.감사합니다.
-
미해결그리드(Grid) 핵심이론 및 실전 활용
holly grail layout에 대한 질문 입니다.
안녕하세요 그리드 수강생입니다.항상 좋은 강의에 감사 드립니다.그리드로 메인화면을 레이아웃 할때 어떤 것이 효율적인지 한번 봐주셨으면 합니다.제가 두개를 코딩해 보았는데요.http://soopsok.dothome.co.kr/grid/index6_1.html위의 링크에 있는 레이아웃은 row 3개를 잡고 컨텐츠 부분은 1200px/가운데 정렬로 해서 레이아웃 한 다음에 메인컨텐츠 부분만 그리드로 처리 한거구요.http://soopsok.dothome.co.kr/grid/index6_2.html위의 링크는 bg 부분도 모두 그리드로 잡아 보았습니다.현재 모바일 변환은 안된 상태구요.모바일로 변환 할때 문제점도 있을 것 같기도 합니다만.최근에는 메인화면에서도 배경 처리가 함께 되어야 하기 때문에 어떤 식으로 레이아웃을 하는 것이 좋을까? 고민이 되어서요.한번 보신후에 조언 부탁 드립니다^^감사합니다!
-
미해결따라하며 배우는 NestJS
nested json을 dto로 전달하려면 어떻게 해야하나요?
1개의 json 객체 안에 프로퍼티가 다른 여러 객체들이 들어있는 리스트가 담겨있는 것을 dto로 전달하려면 어떻게 해야하나요?구글링해보니까 nested 인터페이스를 사용하기도 하던데,Entity는 일반적으로 class로 만드니까 nested class는 어떻게 생성하는지가 궁금합니다.그리고 제 목표는 저 json 인에 들어있는 2가지 종류의 객체( slider type과 selecrive type)를 1번의 post메소드로만 보내고 싶습니다. 그런데 아래처럼 두 객체의 프로퍼티가 다를때, 하나의service,controller,repository를 이용해서 전달하려면 어떻게 해야하나요?json 객체의 형태는 아래와 같습니다.{ "questions_count": 8, "results_slider": [ { "type": "slider", "main_criteria_id": 0, "main_criteria": "Mollit mollit qui sint irure do ad laborum quis ullamco eu dolor.", "sub_criterias": [ "Eu occaecat pariatur sunt duis amet in sint velit amet consequat deserunt.", "Culpa Lorem nisi ut ea irure et eu do cupidatat ipsum duis veniam elit." ], "results": [ { "sub_criteria_id": 0, "sub_criteria_score": 4.7748 }, { "sub_criteria_id": 1, "sub_criteria_score": 7.091 } ] }, { "type": "slider", "main_criteria_id": 1, "main_criteria": "Qui consequat ullamco aliquip Lorem minim commodo irure magna cillum.", "sub_criterias": [ "Velit eu ullamco id nisi quis consequat non non commodo aliquip qui mollit.", "In esse amet proident dolore do aliquip est deserunt commodo eu eiusmod cillum.", "Nisi laboris velit Lorem irure." ], "results": [ { "sub_criteria_id": 0, "sub_criteria_score": 8.1561 } ] } ], "results_selective": [ { "type": "selective", "selective_criteria_id": 0, "selective_criteria": "Aute veniam quis adipisicing sint est amet aliquip elit.", "results": [ { "option_id": 0, "option_score": 3 }, { "option_id": 1, "option_score": 4 }, { "option_id": 2, "option_score": 5 }, { "option_id": 3, "option_score": 2 } ] }, { "type": "selective", "selective_criteria_id": 1, "selective_criteria": "Ipsum culpa dolore ad culpa amet aute ad.", "results": [ { "option_id": 0, "option_score": 3 } ] } ]}
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
강의 자료 요청
강의자료 부탁드립니다. cmh8941@hanmail.net
-
해결됨대세는 쿠버네티스 (초급~중급편)
Authorization 실습
안녕하세요 강의 잘 보고 있습니다.Authorization 실습예제에서 궁금한 부분이 있는데nm-02 네임스페이스를 생성하면default serviceaccount가 같이 생성되자나요?근데 clusterRole을 default serviceaccount와 연결하지 않고sa-02라는 serviceaccount를 새로 만들어서 연결하는 이유가 있을까요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
html 파일이 파일목록에 안보여요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]html 파일을 생성했는데 파일이 보이지 않아요.. 인텔리제이 대신에 sts 사용하고 있는데 뭐가 문제일까요.. IDE 재시작, 컴퓨터 재시작, project clean, refresh 등 해봐도 안되네요..단순 IDE 문제일까요 세팅문제일까요..