따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
안녕하세요! 로그아웃 후 계속 auth/me후 계속 req에서 쿠키가 존재해서 문의 남깁니다! application탭에서 쿠키는 잘 삭제가 되고 네트워크 탭에서도 logout이 성공적으로 이루어지는데 reload하면 바로 auth/me가 계속 200코드와 함께 user가 전달됩니다. 콘솔에도 찍어봤는데 계속 req에 쿠키가 같이 전달되고 있어서 요. 서버도 껐다 켜보고 했는데도 계속 그래서 문의드립니다! client/src/context/auth.tsx client/src/components/NavBar.tsx server/src/middlewares/auth.ts server/src/routes/auth.ts
관련 에러를 찾아보니 ip주소를 0000이나 내 컴퓨터 ip를 입력해봐서 해결한 경우를 보았으나 제 경우는 해결되지 않습니다. 어떻게 해결할 수 있을까요? 아래 오류 코드입니다. MongoServerError: bad auth : authentication failed at Connection.onMessage (/Users/shinheejin/Documents/boiler-plate/node_modules/mongodb/lib/cmap/connection.js:227:30) at MessageStream.<anonymous> (/Users/shinheejin/Documents/boiler-plate/node_modules/mongodb/lib/cmap/connection.js:60:60) at MessageStream.emit (node:events:513:28) at processIncomingData (/Users/shinheejin/Documents/boiler-plate/node_modules/mongodb/lib/cmap/message_stream.js:125:16) at MessageStream._write (/Users/shinheejin/Documents/boiler-plate/node_modules/mongodb/lib/cmap/message_stream.js:33:9) at writeOrBuffer (node:internal/streams/writable:392:12) at _write (node:internal/streams/writable:333:10) at Writable.write (node:internal/streams/writable:337:10) at TLSSocket.ondata (node:internal/streams/readable:766:22) at TLSSocket.emit (node:events:513:28) { ok: 0, code: 8000, codeName: 'AtlasError', connectionGeneration: 0, [Symbol(errorLabels)]: Set(2) { 'HandshakeError', 'ResetPool' } }
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요 상태관리 라이브러리 관하여 여쭤볼게 있습니다. 상태관리 라이브러리가 많은데 그중 riverpod을 쓰시는 이유가 있으신가요? 다른 상태관리 라이브러리 (Provider, Bloc, Get 등)을 사용해도 강의에 나온것과 같은 기능, 같은 패턴으로 구현할수 있나요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Idol blackpink = new Idol( ~~~ ) Idol blackpink = Idol( ~~ ) 이렇게 둘 다 가능하다는 내용을 보았습니다. const생성자를 적용시킬 경우, 후자는 const Idol( )을 하면 error가 발생하지 않는데, 전자의 경우에는 new const Idol( ) 을 해도, const new Idol()을 해도 error가발생하는데 어떻게 해야 할까요? 후자의 경우에는?
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Cannot drop "PRODUCT" because "FKR3MKF1FYVW50W5N52XQ1B8A4B" depends on it; SQL statement: 참조때문에 drop이 안되어서 create를 다시할떄 문제가 생기는 것같습니다.
다이어리 에디터 직접 만들어보고 있는데 강의에서 e.target .name에 []괄호 안에넣는데 e.target.name 자체가 string이잖아요 괄호표기법으로 안써도 위에서는 그냥 author: "" 이렇게 key갑: value 값 써줬는데 e.target .name도 console찍어보면 author라고 뜨는데 왜 괄호를 붙여야 하나요? [ e.target.name ] 왜 이렇게 써야하는지 궁금합니다. 위에선 괄호없이 string으로 썼는데
강의 잘 듣고 있습니다! 이것저것 해보다가 궁금한게 생겼어요. 19번째 줄이 실행되는 순간 customerList의 fee 값이 바뀌어야 하는거 아닌가요? 20번째 줄을 안쓸때는 아래처럼 fee값이 안바뀐채로 출력되는데 챈 50 0 레 45 0 모 40 0 벤 20 0 제 10 0 20번째 줄을 쓰니까 이렇게 나오는 이유가 궁금합니다! 챈 50 2000 레 45 2000 모 40 2000 벤 20 0 제 10 0
스프링부트 버전이 현재 2버전은 2.7.8밖에 없는데 자바11로 다운 받았으니 3버전 안하고 2.7.8로 하고 나머진 강의 그대로 해도 될까요?? 현재 화면입니다. 이렇게 설정해도 문제없는지 질문드립니다. 자주하는 질문에 보니 스프링부트 3버전부터는 Java17이상을 다운받아야한다고 나와있는데, 원래 Java19가 있는데 지웠다 11로 다시 설치한 상태라 컴퓨터에 Java여러 버전이 제대로 지워지지 않으면 오류가 날까봐 있는 버전으로 가능할지 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 헷갈리는 부분이 있어 질문드립니다. em.persist(member) 를 하게 되면 DB에 저장이 바로 되는건지, 영속성 컨텍스트에만 저장이 되는건지 궁금합니다. 그리고 DB 연결이 안되어 있는 상황에서 em.persist(member) 를 하게 된다면 어디에 저장이 되는 건지도 헷갈립니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
죄송하지만, 어제 질문을 남겼는데 제가 제대로 궁금한 사항을 전달하지 못한 거 같아 다시 질문드립니다. paginate함수에서 왜 꼭 final pState = state as CursorPaginationFetchingMore<T>; 해주어야만 하는지 잘 이해를 못하겠습니다. 강의에서 처럼, final resp = await repository.paginate(paginationParams: paginationParams); if (state is CursorPaginationFetchingMore) { final pState = state as CursorPaginationFetchingMore<T>; // 기존 데이터에 새로운 데이터 추가 state = resp.copyWith( data: [ ...pState.data, ...resp.data, ], ); 이 아닌, final resp = await repository.paginate(paginationParams: paginationParams); if (state is CursorPaginationFetchingMore) { state as CursorPaginationFetchingMore<T>; // 기존 데이터에 새로운 데이터 추가 state = resp.copyWith( data: [ ...state.data, ...resp.data, ], ); 으로 하게 되면 왜 data가 자동완성이 안되는 걸까요? state의 상태를 CursorPaginationBase로만 인식을 해서 안되던데, CursorPaginationFetchingMore extends CursorPaginationBase를 했으니, state as CursorPagination<T>이라고 해도 .data를 인식해야 하는거 아닌가요?