inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

시퀄라이즈안쓰고 mysql연결하려고 합니다.

미해결

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

기존에 mysql에 연결은 이런식으로 했습니다. 코드가 너무 지져분해서 mvc패턴으로 나눠보려고 하는중입니다. 아래처럼 바꾸고 db연결하고 로그인하려고 하는데 이렇게 오류가 발생하고있습니다. 구글링해봤는데 대부분은 처음에했던 위에것처럼 많이 나오는거 같아요. db를 models폴더에 mysql.js에 정의하고 controller에서 연결해서 사용하고싶습니다. 혹시 controller에서 쿼리문입력하면 너무 지저분한거 같아서 강사님이 models의 user.js에 시퀄라이즈를 이용해서 db에 정보넣는것처럼 쿼리문 따로 폴더를 만들어서 가져오고 사용할수있나요?(쿼리문을 밖으로 빼서 사용하고싶습니다.) 자세히 설명해 주시면 감사하겠습니다.

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
밈몀묘 댓글 1 좋아요 0 조회수 433

페이지 접속시 다수 렌더링 이슈(slack환경으로 새 프로젝트 구축)

미해결

Slack 클론 코딩[실시간 채팅 with React]

슬랙 프로젝트의 환경설정(웹팩 등)을 토대로 새 프로젝트를 만들고 있습니다. 페이지 접속시 console.log를 찍어보니 3번 찍히는 문제가 있습니다. 원인 및 해결방법을 모르겠어서 질문드립니다. 아래는 라우터 쪽입니다. login과 signup은 loadble을 사용해서 그런지 1번만 console.log가 찍혔습니다. 아래 stockrecode에 해당하는 페이지가 3번 console.log 찍힙니다. 아래는 stockrecode 컴포넌트에 있는 코드입니다. 나머지는 다 주석처리하였습니다. 아래는 로 이동시에 표시된 내용입니다. useSwr 사용 부분을 지우면 2번 표시됩니다. <해본 방법> strict-mode를 지우면 되는 글을 보아서 찾아봤는데 이미 strict-mode가 없는 상태였습니다. 2.웹팩에서 strict-mode를 false로 하면 되는 글을 보고 해보았는데 (관련 링크 https://www.sobyte.net/post/2021-09/webpack-strip-use-strict/) 아래처럼 @babel/plugin-transform-modules-commonjs 설치를 하고 적용해보았는데도 아래처럼 에러가 생겨서 이 방법으로도 해결하지 못하였습니다 답변주시는데 더 필요한 정보가 있으시면 말씀부탁드립니다. 꼭 해결하고 싶은데 제자리만 멤도는거 같아 질문 올립니다. ㅠ

  • react
  • 웹팩
  • typescript
  • socket.io
  • babel
  • 클론코딩
백민철 댓글 1 좋아요 0 조회수 293

res.render 질문

미해결

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

사용자 이름을 누르면 사용자의 게시글이 출력되는 기능 구현중 res.render가 동작하지 않아 질문 드립니다. 아래가 컨트롤러 부분이고 console.log(posts[0].User.nick); 이부분도 출력 되는걸 확인했습니다. 그런데 title 안에 posts[0].User.nick 이 부분에서 오류가 뜨는데 위 console.log에서 출력이 되는데 왜 여기선 오류가 뜨는지도 모르겠고 title과 twits 부분을 지우고 main을 다른 페이지로 바꿨는데도 아예 동작을 하지 않는걸 확인했습니다. title 부분에서 오류가 안떠도 페이지가 제대로 로드 되지도 않습니다. exports.renderUpost = async (req, res, next) => { try { console.log("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); let posts = []; if (req.params.userId) { const posts = await Post.findAll({ include: [ { model: User, where: { id: req.params.userId }, attributes: ["id", "nick"], }, ], }); console.log(posts[0].User.nick); } res.render("main", { title: ` ${posts[0].User.nick} | NodeBird`, twits: posts, }); } catch (error) { console.error(error); next(error); } }; 제가 작성자 이름을 a 태그로 해서 아래 코드처럼 수정해서 했는데 혹시 이 a태그에 넣은것들이 잘못된건가요? 위 코드에서 console.log 까지 출력 다 되는거 보면 문제가 없을것 같은데 그나마 생길것 같은게 이부분뿐이라 올려봅니다. <a href="#" onclick="findUpost(this);return false;" class="twit-author">{{twit.User.nick}}</a>

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
신민규 댓글 1 좋아요 0 조회수 502

npm run dev시 password 다르다고 나옴

미해결

따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)

에러 종류: 위와 같은 환경에서 error: password authentication failed for user "postgres" 로 추정되는 에러 발생 아마 서버 연결시 인증 문제로 보입니다. 작동 절차: docker-compose up 입력, server 파일로 이동, npm run dev 실행. 에러 발생 +1) POSTGRES_HOST_AUTH_METHOD: trust로 설정하고 서버 새로 만들어도 동일한 에러가 발생하여 무슨 문제일지 잘 모르겠네요.. 도움 주시면 감사하겠습니다. +2) 아래에 터미널의 전체 에러 코드 남깁니다. C:\Users\tukim\Desktop\reddit-clone-app\server>npm run dev > server@1.0.0 dev > nodemon --exec ts-node ./src/server.ts [nodemon] 3.0.1 [nodemon] to restart at any time, enter rs [nodemon] watching path(s): . [nodemon] watching extensions: ts,json [nodemon] starting ts-node ./src/server.ts server running at https://localhost:4000 error: ����� "postgres"�� password ������ �����߽��ϴ� at Parser.parseErrorMessage (C:\Users\tukim\Desktop\reddit-clone-app\server\node_modules\pg-protocol\src\parser.ts:369:69) at Parser.handlePacket (C:\Users\tukim\Desktop\reddit-clone-app\server\node_modules\pg-protocol\src\parser.ts:188:21) at Parser.parse (C:\Users\tukim\Desktop\reddit-clone-app\server\node_modules\pg-protocol\src\parser.ts:103:30) at Socket.<anonymous> (C:\Users\tukim\Desktop\reddit-clone-app\server\node_modules\pg-protocol\src\index.ts:7:48) at Socket.emit (node:events:513:28) at Socket.emit (node:domain:489:12) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) at Socket.Readable.push (node:internal/streams/readable:234:10) at TCP.onStreamRead (node:internal/stream_base_commons:190:23) { length: 107, severity: 'ġ��������', code: '28P01', detail: undefined, hint: undefined, position: undefined, internalPosition: undefined, internalQuery: undefined, where: undefined, schema: undefined, table: undefined, column: undefined, dataType: undefined, constraint: undefined, file: 'auth.c', line: '329', routine: 'auth_failed' }

  • react
  • node.js
  • postgresql
  • docker
  • typescript
  • 클론코딩
  • next.js
지말미 댓글 2 좋아요 0 조회수 716

JWT 시그니처, 비밀키 부분 질문

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

1:49 책 내용을 보면 시그니처 자체는 숨기지 않아도 되고, 비밀 키만 숨기면 된다고 적혀있는데 시그니처 안에 비밀 키가 들어있으니 이것도 유출되면 안 되는게 아닌가요? 비밀 키를 찾지 않고 그냥 바로 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.he0ErCNloe4J7Id0Ry2SEDg09lKkZkfsRiGsdX_vgEg 이런 JWT문자열을 가로채서 API서버로 보내면 변조는 아니지만 그냥 그 사람인 척 할 수 있는게 아닌가요?

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
roider2316 댓글 1 좋아요 0 조회수 324

Object 클래스의 clone() 메서드 질문

미해결

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

Object 클래스의 clone() 메서드는 깊은 복사가 아니라 얕은 복사로 알고 있습니다. 강의에서의 선생님의 말씀대로 clone() 메서드는 깊은 복사가 맞나요?

  • java
  • 코딩-테스트
재영 댓글 2 좋아요 0 조회수 364

TCP_NODELAY 옵션

해결됨

Windows 소켓 프로그래밍 입문에서 고성능 서버까지!

TCP_NODELAY 옵션을 주면 입출력 버퍼를 사용하지 않는다고 하셨는데 입력 버퍼도 사용하지 않나요?? 맞다면 보내는 측의 send()와 받는 측의 recv()가 1:1 매핑이 되는 건가요?? ( 받는 측에서 TCP_NODELAY 옵션을 줬다면 )

  • socket.io
  • udp
  • iocp
  • tcpip
손태정 댓글 1 좋아요 0 조회수 887

질문있습니다

해결됨

Windows 소켓 프로그래밍 입문에서 고성능 서버까지!

1. send()함수는 패킷을 보내는 함수가 아니라 소켓의 출력 버퍼에 데이터를 쓰는 것이고, recv()함수는 소켓의 입력버퍼에서 데이터를 읽어들이는 거라고 보면 될까요?? 데이터를 모아서 한번에 패킷을 보내는 것이 패킷의 갯수를 줄여서 성능 상의 이점이 있다는 건 알겠지만 데이터를 받을 때도 입력 버퍼에서 모아놓았다가 한번에 읽어들이는 것이 좋다는 것은 잘 모르겠네요...ㅠㅠ 데이터를 받을 때 패킷을 보낼 때와 마찬가지로 일정 시간 대기해서 데이터가 쌓이도록 한 다음 읽어들인다는 건가요??

  • socket.io
  • udp
  • iocp
  • tcpip
손태정 댓글 1 좋아요 0 조회수 258

좋아요 기능 구현중 에러 질문입니다.

미해결

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

첫번째 부터 순서대로post모델,user모델 passport.index의 deserializeUser부분 route.page 부분 입니다. User is associated to User multiple times. To identify the correct association, you must use the 'as' keyword to specify the alias of the association you want to include. 위 같은 오류가 뜨는데 어떤게 문제인지 아무리 찾아봐도 모르겠습니다..

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
신민규 댓글 1 좋아요 0 조회수 484

include의 as옵션 질문

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

include의 as옵션으로 넣은 가명이 belongsToMany의 as옵션으로 설정한 가명을 찾는 것인가요? chatGPT 는 include의 as옵션이 그냥 찾은 객체에 가명을 붙이는 것 뿐이라고 하던데 include: [ { model: User, attributes: ['id', 'nick'], as: 'Followers', }, { model: User, attributes: ['id', 'nick'], as: 'Followings', }, ] }) 여기서 model옵션으로 똑같이 User를 넣었는데 두 개의 결괏값이 다르게 나온다는 게 이해가 안 돼요

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
roider2316 댓글 1 좋아요 0 조회수 294

MySql Lock을 사용하지 않는 이유

미해결

실습으로 배우는 선착순 이벤트 시스템

강의에서 설명해주시기로는 쿠폰 개수를 가져오는 것부터 쿠폰 생성까지 lock을 걸어야 한다고 설명 주셨는데 이전 강의인 재고 관리 이슈와는 다르게 row가 아닌 table에 lock을 걸기 때문에 성능 이슈가 발생한다고 보면 될까요?

  • java
  • docker
  • spring-boot
  • kafka
  • redis
데자와아 댓글 2 좋아요 0 조회수 1236

좋아요 기능 구현중 시퀄라이즈 add함수 질문

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

3번째 사진의 post.addliked(parseInt~~ 이 부분에서 addliked 라는 함수가 존재하지 않는다고 하는데 s를 붙여봐도 as에 해당하는 부분으로 교체해봐도 전부 오류가 뜨네요 왜그럴까요....

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
신민규 댓글 1 좋아요 1 조회수 372

GET /cart.json 404 4.349 ms - 2902 에러

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

게시글 업로드시 다른 요청/응답은 다 정상이고 게시글 업로드와 DB생성도 다 정상적으로 작동되던데 마지막에 GET /cart.json 404 4.349 ms - 2902 에러가 뜨던데 이번 코드에서 /cart.json 요청을 한 코드가 있었나요? 신경을 안 써도 되는 부분인지 궁금합니다.

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
roider2316 댓글 1 좋아요 0 조회수 521

[이진 탐색 실전 문제] 원하는 정수 찾기 편 질문

미해결

Do it! 알고리즘 코딩테스트 with JAVA

안녕하세요? 강의를 듣다가 궁금한 것이 생겨 질문 드립니다. 자바의 정렬 기본 알고리즘 시간 복잡도와 이진 탐색 시간 복잡도가 nlogn인 건 이해했는데, 코드부를 보면 이중 반복문이 나오고 있습니다. 앞 서 강의에서 반복문을 기준으로 이중 반복문이면 n의2승이라고 말씀하셨는데, 이 중 반복문을 썼는데도 nlogn이 되는 건 반복문이 진행되는 동안 절반씩 찾기 때문인가요?? 만약 이중 반복문으로 시간 복잡도가 올라간다면 이중 반복문을 쓰지 않고, 해결하는 방법을 알려주실 수 있으실까요?

  • java
  • 코딩-테스트
  • 알고리즘
댓글 1 좋아요 0 조회수 519

시퀄라이즈 실습 강의 : CREATE 가 아니라 SELECT가 출력됩니다.

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

-C:\Users\ysm65\learn-sequelize>npm start > learn-seuqellize@0.0.1 start > nodemon app [nodemon] 3.0.1 [nodemon] to restart at any time, enter rs [nodemon] watching path(s): . [nodemon] watching extensions: js,mjs,cjs,json [nodemon] starting node app.js 3001 번 포트에서 대기중 Executing (default): SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_NAME = 'users' AND TABLE_SCHEMA = 'nodejs' Executing (default): SHOW INDEX FROM users FROM nodejs Executing (default): SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_NAME = 'comments' AND TABLE_SCHEMA = 'nodejs' Executing (default): SHOW INDEX FROM comments FROM nodejs 데이터베이스 연결 성공 --개정 3판 7장 내용 실습 중 마지막에 브라우저 창에 띄우는 것 까지 확인을 했지만 이름을 클릭 시 comment 내용이 뜨지 않아 하나씩 확인하면서 오류를 찾고 있습니다. 그 과정에서 3판 교과서 344page에서 소개된 내용과 다른 점을 찾았고 강사님과 다르게 CREATED가 아니라 SELECTED 로 뜨는 게 문제의 원인이지 않을까 생각하고 있습니다. 코드의 오타는 확인한 상황인데, 다른 원인이 어떤 게 있는지 고민을 하다가 이렇게 질문 글을 남깁니다. 어떻게 해결을 하는 게 좋을 지 조언을 구하기 위해서 질문을 남깁니다.

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
ysm6514 댓글 1 좋아요 0 조회수 248

인터페이스 강의를 듣고 궁금증이 생겼습니다.

미해결

나도코딩의 자바 기본편 - 풀코스 (20시간)

1. interface클래스내에 정의된 메써드는 public abstract이고, 변수는 public static final이 자동으로 앞에 정의가 된다고 하셨는데 이건 고정인건가요? 다른 형태로 봐꿀 수 있나요? 봐꿀 수 없다면 왜 그러한지가 궁금합니다. interface 클래스를 implements해주고 추상클래스를 extends 해주는 것은 둘 다 상속인건가요? 둘다 부모 클래스가 되는건가요?

  • java
  • 객체지향
최은희 댓글 1 좋아요 1 조회수 295

req.session 질문

해결됨

[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지

16:19의 3번에서 세션 객체를 찾아서 req.session으로 만든다고 했었는데 이전에 처음에 로그인 했을 때 req.session으로 등록된 세션 객체(13:40의 6번)는 사라진 건가요?

  • node.js
  • mysql
  • mongodb
  • express
  • typescript
  • socket.io
  • jwt
roider2316 댓글 1 좋아요 0 조회수 349

baseURL 변경 후에도 같은 내용의 cors 에러가 나옵니다.

해결됨

Slack 클론 코딩[실시간 채팅 with React]

안녕하세요 질문드립니다! 아직 초반이지만 언젠가부터 cors 에러가 계속 나고 있는데 baseURL 도 아래와 같이 변경했습니다. axios.defaults.baseURL = process.env.NODE_ENV === 'production' ? 'http://localhost:3095' : 'http://localhost:3090'; 제 코드엔 nodebird 라는 글자 자체가 없는데 어디가 잘못된 건가요......

  • react
  • 웹팩
  • typescript
  • socket.io
  • babel
  • 클론코딩
따뜻한 거북이 댓글 1 좋아요 0 조회수 400

isEqualTo를 isSameAs로 바꿔야하는것이 아닌가요??

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

@RunWith(SpringRunner.class) @SpringBootTest public class MemberRepositoryTest { @Autowired MemberRepository memberRepository; @Test @Transactional @Rollback(false) public void testMember() throws Exception { //given Member member = new Member(); member.setUsername("memberA"); //when Long saveId = memberRepository.save(member); Member findMember = memberRepository.find(saveId); //then assertThat(findMember.getId()).isEqualTo(member.getId()); assertThat(findMember.getUsername()).isEqualTo(member.getUsername()); assertThat(member).isEqualTo(findMember); System.out.println("findMember == member: " + (findMember == member)); } } 위 코드에서 디비에 넣은 멤버와 찾은 멤버가 같은지를 비교를 isEqualTo를 사용을 하셨는데 이것은 제가 알기론 value부분만 같다면 true라는것으로 알고 있습니다. 같은 영속성 컨텍스트 안에서의 객체가 같은지 확인하려면 isSameAs가 맞지 않은지 의문이 생겼습니다!

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
hello0718 댓글 1 좋아요 0 조회수 340

DB 엔티티와 도메인 분리

해결됨

Java/Spring 주니어 개발자를 위한 오답노트

어디까지 추상화 해야 하는가? 강의에서 2분 17초에 toDomain()으로 바꿔서 반환을 했는데 이렇게하면 JPA 엔티티가 아니라서 변경감지를 사용하지 못하는거 아닌가요? 이러한 방식으로 작성한다면 업데이트가 필요할 때는 어떤식으로 처리하나요?

  • java
  • spring
  • 객체지향
  • 소프트웨어-테스트
yhwjd 댓글 2 좋아요 3 조회수 4734

인기 태그

인프런 TOP Writers

주간 인기글