묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨따라하며 배우는 노드, 리액트 시리즈 - 챗봇 사이트 만들기
포스트맨에서 send를 하였을 때 오류가 납니다.
D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:427 return Error(s); ^Error: The file at "D:\다운로드\test-chat-bot-app-432113-2e08177eda4a.json" does not exist, or it is not a file. Error: ENOENT: no such file or directory, lstat 'D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\"D:' at GoogleAuth.createError (D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:427:16) at GoogleAuth.<anonymous> (D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:273:28) at Generator.next (<anonymous>) at D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:22:71 at new Promise (<anonymous>) at __awaiter (D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:18:12) at GoogleAuth._getApplicationCredentialsFromFilePath (D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:257:16) at GoogleAuth.<anonymous> (D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:202:29) at Generator.next (<anonymous>) at D:\다운로드\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\chatbot-app-56b70f8517a33ac618d6b1b5684bf304f84358b4\node_modules\google-auth-library\build\src\auth\googleauth.js:22:71 npm start run 이후 포스트맨에서 send를 누르면 이런식으로 나오네요 문제가 뭔지 잘 모르겠습니다....
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
메모리 관리규칙에서 질문드립니다.
fn main() { let s: String = String::from("헬로"); let (s, len) = string_length(s); println!("문자열 {}의 길이는 {}", s, len);}fn string_length(s: String) -> (String, usize) { (s, s.len())}string_length 함수에서 선생님께서 쓰신 코드와 순서를 바꿔 입력하였을때 오류가 발생합니다. 선생님: (s.len(), s)저 :(s, s.len()) 물론 메인함수의 (s, len) 순서도 수정하였으며, string_length 함수의 반환타입도 순서도 수정하였습니다.
-
해결됨비전공자도 이해할 수 있는 CI/CD 입문·실전
배포는 성공하지만, pm2 list를 확인해보면 에러가 발생이 되어있습니다.
해당 부분을 응용해서, aws linux / next.js를 진행하고 있었습니다. 앞선 강의는 잘 되었으나, 해당 강의해서 어려움을 겪게되어 질문을 남기게 되었습니다.우서 배포를 확인해보니 성공, s3버킷에는 압춗파일이 잘 올라갔습니다.ls를 통해서 디렉토리까지 생성이 되는것을 확인하였습니다.하지만 node_modules가 설치가 안되어 log를 확인해보니,아래와 같은 에러가 발생합니다. 혹시 설정에 문제가 있을까요? cd: /home/ec2-user/instantgram-server: No such file or directory 2024-08-12 15:00:19 [stderr]npm ERR! Tracker "idealTree" already exists 2024-08-12 15:00:19 [stderr] 2024-08-12 15:00:19 [stderr]npm ERR! A complete log of this run can be found in: /home/ec2-user/.npm/_logs/2024-08-12T15_00_19_547Z-debug-0.log 2024-08-12 15:00:20 [stdout][PM2] Spawning PM2 daemon with pm2_home=/home/ec2-user/.pm2 2024-08-12 15:00:20 [stdout][PM2] PM2 Successfully daemonized 2024-08-12 15:00:20 [stderr][PM2][WARN] No process found 2024-08-12 15:00:20 [stdout][PM2] [v] All Applications Stopped 2024-08-12 15:00:20 [stdout][PM2] [v] PM2 Daemon Stopped 2024-08-12 15:00:21 [stdout][PM2] Spawning PM2 daemon with pm2_home=/home/ec2-user/.pm2 2024-08-12 15:00:21 [stdout][PM2] PM2 Successfully daemonized 2024-08-12 15:00:21 [stdout][PM2] Starting /usr/bin/npm in fork_mode (1 instance) 2024-08-12 15:00:21 [stdout][PM2] Done.#appspec.yml version: 0.0 os: linux files: # S3에 저장한 파일들 중 destination(AWS EC2)으로 이동시킬 대상을 지정한다. # / 이라고 지정하면 S3에 저장한 전체 파일을 뜻한다. - source: / # EC2의 어떤 경로에 저장할 지 지정한다. destination: /home/ec2-user/instagram-server permissions: - object: / owner: ec2-user group: ec2-user hooks: ApplicationStart: - location: scripts/start-server.sh timeout: 60 runas: ec2-user#deploy.yml name: Deploy To EC2 on: push: branches: - master jobs: Deploy: runs-on: ubuntu-latest steps: - name: Github Repository 파일 불러오기 uses: actions/checkout@v4 # Github Repository의 파일을 가져오는 Action - name: Node.js 설치 uses: actions/setup-node@v4 # Node.js를 설치하는 Action with: node-version: 18.x # Node.js 버전 - name: 의존성(라이브러리) 설치 run: npm ci # npm ci는 package-lock.json에 있는 의존성을 설치하는 명령어 - name: .env 파일 만들기 run: | echo '${{ secrets.ENV }}' > .env - name: 테스트 코드 실행 run: npm run test - name: 빌드 run: npm run build # 빌드 - name: 압축하기 run: tar -zcvf $GITHUB_SHA.tar.gz appspec.yml scripts public .next .env package.json package-lock.json # 압축 - name: AWS Resource에 접근할 수 있게 AWS credentials 설정 uses: aws-actions/configure-aws-credentials@v4 with: aws-region: ap-northeast-2 aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCRESS_KEY }} - name: S3에 프로젝트 폴더 업로드하기 run: aws s3 cp --region ap-northeast-2 ./$GITHUB_SHA.tar.gz s3://instagram-server-s3/$GITHUB_SHA.tar.gz - name: Code Deploy를 활용해 EC2에 프로젝트 코드 배포 run: aws deploy create-deployment --application-name instagram-server --deployment-config-name CodeDeployDefault.AllAtOnce --deployment-group-name Production --s3-location bucket=instagram-server-s3,bundleType=tgz,key=$GITHUB_SHA.tar.gz #start-server.sh #!/bin/bash echo "-----------------서버 바로 배포 시작-----------------" cd /home/ec2-user/instantgram-server npm i pm2 kill pm2 start npm --name "my-next-app" -- start echo "-----------------서버 바로 배포 끝-----------------"
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
40번 교집합 문제
선생님, 제가 이 방법으로 처음에 풀었었는데 알고리즘 상으로는 1초안에 들어오는 방법인가요?? 맞다면 c배열의 범위를 어떻게 지정해야되는지 잘 모르겠어서 질문드립니다!(stdio.h랑 vector는 위에서 선언했습니다)
-
미해결[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
예제문제 추가 쿼리 질문
안녕하세요 공부하다가 쿼리에 추가해보고 싶은게 생겨서 질문드립니다!예2: 서브카테코리가 '여성신발'인 상품중 할인가격이 가장 높은 상품의 할인가격 가져오기이 문제에 정석 답변이라면 MAX(dis_price) 컬럼만 도출될텐데요! 앞에다가 해당 상품명 title을 추가해서 총 두 개의 컬럼이 나오게끔 만들어보려다가 막혀서 질문드립니다.원래는 99000짜리 하나만 나와야하는데밑에 쿼리로 하니까 여러개가 나와서요 ㅠㅠ 여러개가 나온 이유는 알거같아요 타이틀을 그룹바이해서 그 그룹별로 제일 높은 가격이 도출된 것 같은데 그건 제가 원하는 답은 아니어서요! 맥스 디스 프라이스를 가진 아이템코드의 타이틀을 어떻게 해야 효과적으로 도출할 수 있나요?SELECT title, MAX(dis_price) FROM items JOIN ranking on items.item_code = ranking.item_code WHERE sub_category = "여성신발" group by title;
-
미해결비전공 기획자 및 관리자를 위한 IT 필수 지식
강의 교안 요청드립니다!
안녕하세요! 강의 교안 요청드립니다. :) kmh291228@naver.com 으로 부탁드립니다!
-
미해결파이썬으로 장고(Django) 공략하기: 입문
putty 관련 질문
안녕하세요.ppt에 나와있는대로 putty 접속을 시도하는데,Unable to use certificate file (PuTTY SSH-2 private key) 이런 메세지가 뜨면서 안됩니다.해결방법이 있을까요?
-
미해결토비의 스프링 부트 - 이해와 원리
Hikari 라이브러리가 없으면 오류가 나는거 아닌가요
제가 이번 강의까지 보다가 한달만에 다시봐서 헷갈리는걸수도 있는데 갑자기 궁금하여 질문드립니다..Hikari 라이브러리를 gradle에서 가져오지 못하는 이슈 때문에 이번 강의의 커뮤니티 게시판에 다른 분이 작성한 글을 참고하여 토비님과 다르게 gradle에 implementation('com.zaxxer:HikariCP:4.0.3')를 추가해줘서 강의를 보고 있는데요.강의에서 DataSourceConfig 클래스 안에서 Hikari 관련된 빈을 등록하여 사용하려고 하는데, 이게 어떻게보면 Hikari 관련된 라이브러리가 있으면 사용하고, 아니면 기본 DataSource를 사용하게끔 하는 의도가 있는 자동구성등록하는 방법 이잖아요.. 근데 Hikari 라이브러리를 gradle에 추가 후, 토비님 처럼 테스트를 하면 Hikari가 DataSource로 사용되어 정상 동작하는데, 만약에 반대로 Hikari를 gradle에서 빼면 기본적인 SimpleDriverDataSource 객체가 사용되는게 예상을 하였는데, 당연하게도? gradle에서 Hikari 관련된 implement를 제거해버리면, SimpleDriverDataSource 객체를 사용하기 전에 DataSourceConfig 클래스 안에서 Hikari 관련된 로직들이, Hikari 라이브러리가 없기 떄문에 오류가 나지 않나요?즉, Hikari라는 라이브러리가 없도록, gradle에서 Hikari와 관련된 implements를 빼버리면 SimpleDriverDataSource 가 사용되는게 아니라, 애초에 소스에서 오류가 나는게 맞는건데.. 제가 어디부터 혼란이 온지 모르겠네요.
-
해결됨시스템엔지니어가 알려주는 리눅스 실전편 Bash Shell Script
2-0. 진행 후 웹사이트 접속이 안됩니다.
안녕하세요 2-0. vagrant를 사용하지 않고 구축할 수 있는 실습환경 가이드에 나온대로 virtualBox로 서버 환경을 구축하였습니다. cent1 vm의 아이피인 172.18.1.91로 접속하여도 웹사이트 접속이 안되며 도메인 주소인 vws.tmpcompany.com 으로 접속하여도 연결 할 수 없다고 나옵니다. host pc에서는 172.18.1.91과 vws.tmpcompany.com 주소 모두 ping이 나가고 있고 cent1 vm의 nginx또한 systemctl status nginx 명령으로 확인하였을때 active (running) t상태로 표시되는데 어떤 이유로 접속이 안되는지 잘모르겠습니다ㅠㅠㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
open-in-view값 true/false
@Controller @RequiredArgsConstructor @RequestMapping("/board") public class BoardController { @PostMapping("/update") public String update(@ModelAttribute BoardDTO boardDTO, Model model) { BoardDTO board = boardService.update(boardDTO); model.addAttribute("board", board); return "detail"; } } @Service @RequiredArgsConstructor public class BoardService { private final BoardRepository boardRepository; public BoardDTO findById(Long id) { System.out.println("findById : "+ em.getDelegate()); // 이 아래 코드에서 질문 있습니다. Optional<BoardEntity> optionalBoardEntity = boardRepository.findById(id); if (optionalBoardEntity.isPresent()) { BoardEntity boardEntity = optionalBoardEntity.get(); return BoardDTO.toBoardDTO(boardEntity); } else { return null; } } public BoardDTO update(BoardDTO boardDTO) { System.out.println("update : "+ em.getDelegate()); BoardEntity boardEntity = BoardEntity.toUpdateEntity(boardDTO); boardRepository.save(boardEntity); return findById(boardDTO.getId()); } } @MappedSuperclass @EntityListeners(AuditingEntityListener.class) @Getter public class BaseEntity { @CreationTimestamp @Column(updatable = false) private LocalDateTime createdTime; @UpdateTimestamp @Column(insertable = false) private LocalDateTime updatedTime; } @Entity @Getter @Setter @Table(name = "board_table") public class BoardEntity extends BaseEntity { @Id GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String boardWriter; private String boardPass; private String boardTitle; private String boardContents; private int boardHits; public static BoardEntity toUpdateEntity(BoardDTO boardDTO) { BoardEntity boardEntity = new BoardEntity(); boardEntity.setId(boardDTO.getId()); boardEntity.setBoardWriter(boardDTO.getBoardWriter()); boardEntity.setBoardPass(boardDTO.getBoardPass()); boardEntity.setBoardTitle(boardDTO.getBoardTitle()); boardEntity.setBoardContents(boardDTO.getBoardContents()); boardEntity.setBoardHits(boardDTO.getBoardHits()); return boardEntity; } } 위에 코드 상황에서 open-in-view를 true로 하면 optionalBoardEntity에 createdTime 값이 null입니다. 제 생각으로는 open-in-view가 true 이므로 update()에서 (createdTime 값이 없는) boardEntity가 영속성 컨텍스트 1차 캐시에 존재하고, findById()에서 boardRepository.findById(id) 값을 호출하지만 1차캐시에 있는 값을 줘서 최종적으로 boardEntity값에는 createdTime값이 없는 것으로 이해했습니다. 그런데 왜 open-in-view값을 false로 하면 boardEntity에 createdTime 값이 있는지 모르겠습니다. open-in-view가 true 이건 false 이건 영속성 컨텍스트 생존 범위에 Service는 포함되니 createdTime 값이 둘 다 없어야 되는것이 아닌지 궁금합니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
코드확인 부탁드립니다!!
강의에 있는 정답과는 다르게 코딩해 봤습니다!예제는 성공하는데 채점하면 틀렸다고해서 질문드립니다!! http://boj.kr/3de8796818e041b58fe799e4a68bd157
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
튜플 89번 문제 질문
튜플 89번 코드 전체에서quot, rem = quot_and_rem(3, 10)만 떼서 다음 셀에서 따로 실행해주고quot를 실행하면 0이 나오는데rem은 실행하면 어떤 결과도 나오지 않는데요혹시 89번 코드처럼def quot_and_rem(x, y): quot = x // y rem = x % y return quot, remquot, rem = quot_and_rem(3, 10)을 한 셀에 실행해야 되어야 하는지, 위에 def값을 선언했기 때문에 제가 실행한 대로 따로 셀에 quot, rem = quot_and_rem을 실행하면 안되는 이유가 있을까요?감사합니다~
-
미해결3dsmax 초급부터 전문가까지 - 한방에 끝내는 3dsmax 강좌
재질편집기 버전이달라서인가
다운은 버전은 2025라고나오고요 최근에받았는데요 저도 sample slots를 찾아서 드레그했는데요 standard가아니라 physical material만 있어서요 그래서 더블클릭기능들도 다달라서 어려움을 격고있습니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 JdbcTemplate강의를 듣고 궁금한 점이 생겨 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]다른 강의의 내용에서 스프링 빈에 dataSource와 JdbcTemplate이 등록이 되어 있는 내용을 보았습니다.그래서 dataSource를 통해 DB와 커넥션을 만드는 부분에서는 새로운 객체를 생성하지 않고 dataSource를 받아와 의존성 주입을 받았는데 여기에서는 JdbcTemplate의 새로운 객체를 생성하여 의존성 주입을 받는데 그러면 싱글톤에서 위배가 되는것 아닌가요?다른 강의에서는 SQL을 DB로 사용하였습니다. 혹시 DB의 차이에 따라 위와 같이 새로운 JdbcTemplate의 객체를 생성할 수 있는 걸까요?
-
해결됨코드로 배우는 React 19 with 스프링부트 API서버
[스프링부트 3.2] RefreshToken 발급시 파라미터 오류
스프링부트 3.2 버전인데 APIRefreshController의 refresh의 파라미터중 String refreshToken만 적으면 -parameter 오류가 나네요. 인텔리제이에서 gradle로 빌드하거나 어노테이션에 이름을 붙여 적으니 잘 동작합니다. 식겁했습니다..
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
트랜잭션 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.현재 컨트롤러에서 직접 리포지토리를 접근하는데 예전 강의에서 단순 엔티티 조회할때는 실용적인 관점으로 서비스를 통해 접근하는 것이 아닌 리포지토리로 바로 접근하기도 한다는걸 들었습니다. 이번 강의에 그 점이 적용이 된거 같습니다.여기서 궁금점은 jpa의 모든 데이터 변경은 트랜잭션 안에서 실행된다고 하셨는데 현재 레포지토리에 바로 접근하면서 @Transactional 애노테이션을 사용안하는 것을 확인하였습니다. 단순 조회에서는 트랜잭션을 시작할 필요가 없는 건가요? 아니면 숨겨진 기능이 있는건지 궁금합니다!
-
해결됨실습으로 손에 잡히는 SQLD의 정석(2과목)
Table not found 에러
모든열을 선택하는 키워드* 해서 강의보고 작성하였는데 table not found라는 에럭 ㅏ뜹니다
-
미해결실무에 바로 쓰자! 이커머스 데이터로 배우는 실전 SQL 분석
결제 데이터 분석 (join)편에 올라온 수업 자료 실행이 안됩니다
해당파일을 실행하려고 하지만 데이터베이스도 아니고 프로젝트도 아니라고 뜨네요. 혹시 파일 실행을 제가 잘못하고 있는걸까요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
플러시와 persist()에 대해 질문 있습니다.
플러시가 발생하여 쓰기 지연 저장소에 쌓여있던 쿼리들이 DB에 보내지게 되면 쓰기 지연 저장소에 쌓여있던 쿼리들은 삭제되나요 아니면 그대로 남아있나요?pk 생성 전략이 identity일 경우 persist()할때 쓰기 지연 저장소로 가는게 아니라 DB로 바로 보내지고 id 값을 얻어온다고 이해 했습니다. 그러면 persist()할때 생긴 insert into 쿼리가 DB로 보내지는데 이때 커밋하기전이라 DB에는 반영이 안되는건가요? DB 내부에서 버퍼? 같은 곳에서 보관했다가 커밋했을때 insert into 쿼리가 작동되는건지 궁금합니다.
-
미해결Vue 3 시작하기
LEARN-VUE-JS 프로젝트 질문
vue.js 공부를 하려고하는데 LEARN-VUE-JS프로젝트는 깃헙에서 다운받으면 되는건가요?? 아니면 프로젝트 어떻게 만들고 진행하는지 궁금합니다.