npm run dev 를 실행했더니 [0] Error: listen EADDRINUSE: address already in use :::5000 [0] at Server.setupListenHandle [as _listen2] (node:net:1751:16) [0] at listenInCluster (node:net:1799:12) [0] at Server.listen (node:net:1887:7) [0] at Function.listen (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\node_modules\express\lib\application.js:635:24) [0] at Object.<anonymous> (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\server\index.js:58:5) [0] at Module._compile (node:internal/modules/cjs/loader:1256:14) [0] at Module._extensions..js (node:internal/modules/cjs/loader:1310:10) [0] at Module.load (node:internal/modules/cjs/loader:1119:32) [0] at Module._load (node:internal/modules/cjs/loader:960:12) [0] at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) [0] at node:internal/main/run_main_module:23:47 [0] Emitted 'error' event on Server instance at: [0] at emitErrorNT (node:net:1778:8) [0] at process.processTicksAndRejections (node:internal/process/task_queues:82:21) { [0] code: 'EADDRINUSE', [0] errno: -4091, [0] syscall: 'listen', [0] address: '::', [0] port: 5000 [0] } [0] [0] Node.js v18.17.1 [0] [nodemon] app crashed - waiting for file changes before starting... [1] [HPM] Proxy created: / -> http://localhost:5000 [1] i 「wds」: Project is running at http://192.168.123.105/ [1] i 「wds」: webpack output is served from [1] i 「wds」: Content not from webpack is served from C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\public [1] i 「wds」: 404s will fallback to / [1] Starting the development server... [1] [1] Error: error:0308010C:digital envelope routines::unsupported [1] at new Hash (node:internal/crypto/hash:69:19) [1] at Object.createHash (node:crypto:133:10) [1] at module.exports (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\util\createHash.js:135:53) [1] at NormalModule._initBuildHash (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:417:16) [1] at handleParseError (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:471:10) [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:503:5 [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:358:12 [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:373:3 [1] at iterateNormalLoaders (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:214:10) [1] at iterateNormalLoaders (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:221:10) [1] C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\react-scripts\scripts\start.js:19 [1] throw err; [1] ^ [1] [1] Error: error:0308010C:digital envelope routines::unsupported [1] at new Hash (node:internal/crypto/hash:69:19) [1] at Object.createHash (node:crypto:133:10) [1] at module.exports (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\util\createHash.js:135:53) [1] at NormalModule._initBuildHash (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:417:16) [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:452:10 [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\webpack\lib\NormalModule.js:323:13 [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:367:11 [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:233:18 [1] at context.callback (C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\loader-runner\lib\LoaderRunner.js:111:13) [1] at C:\Users\sabc1\OneDrive\바탕 화면\boilerplate-mern-stack-master\client\node_modules\babel-loader\lib\index.js:59:103 { [1] opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], [1] library: 'digital envelope routines', [1] reason: 'unsupported', [1] code: 'ERR_OSSL_EVP_UNSUPPORTED' [1] } [1] [1] Node.js v18.17.1 [1] npm run start --prefix client exited with code 1 이런 오류가 뜹니다. node version 이 맞지 않아 생기는 오류 같은데 확인 부탁드려요ㅠㅠ
안녕하세요 강사님! 강의 정말 잘 보고 있습니다. 카카오맵 지도를 띄우는 코드를 작성하는 실습을 하면서 크롬으로 확인을 했는데요, 처음에는 아래의 오류가 떠서 구글링 후에 useEffect(() => { window.kakao.maps.load(() => { const container = document.getElementById("map"); // 지도를 담을 영역의 DOM 레퍼런스 const options = { // 지도를 생성할 때 필요한 기본 옵션 center: new window.kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표. level: 3, // 지도의 레벨(확대, 축소 정도) }; const map = new window.kakao.maps.Map(container, options); // 지도 생성 및 객체 리턴 }); }, []); 위의 코드처럼 kakao의 map 객체가 로드되면 실행되게끔 수정을 했습니다. 그 후부터는 위의 오류가 뜨지는 않았지만 한참동안 브라우저 상단 탭에 로딩되는 상태가 보이다가 지도는 결국 보이지 않더라고요. 개발자도구의 네트워크 탭을 보면 아래와 같이 kakao.js 를 불러오지 못했다고 오류가 나오는데, 로딩 중에 크롬 콘솔에 window.kakao 를 쳐보면 정상적으로 찍힙니다. 크롬에서 브라우저 캐시를 삭제하는 방법, 시크릿창에서 해보는 방법, 새 api 키를 발급하는 방법 등등 해보았지만 모두 안됐는데 사파리에서 실행해보니 곧잘 되는걸 확인했습니다... 코드 상의 문제는 아닌 것 같은데 왜 크롬에서만 안되는 건지 혹시 알 수 있을까요..? 구글링하다가 저와 같은 이슈를 겪은 분의 글을 발견했는데, 이슈가 해결은 안됐지만 일단 첨부합니다. https://devtalk.kakao.com/t/kakao-maps-load-net-err-internet-disconnected/125422/4 위의 글 답변에서는 크롬 확장프로그램 문제일 가능성이 있다고 나오는데, 딱히 문제가 될 것 같은 확장프로그램도 없어서요.. 답변 부탁드립니다! 감사합니다!
스타일콤포넌트 작성 부분에 백틱 다음 문자열 작성에 소플님의 VS 화면의 css 스타일 코드 부분이 하늘색(?)과 노랑색, 갈색으로 보여서 가독성이 좋아 보입니다. 그런데 저는 백틱 다음의 문자열이 모두 갈색으로 보이는데 VS환경설정 기능에 뭔가 있는 건가요? 다른 부분은 색깔 구분에 잘되어져 보이는데, 유독 스타일콤포넌트의 백틱 부부분만 색상 구분이 안됩니다.
@ManyToMany에 대해 학습하는 중 궁금증이 생겨질문드립니다. ManyToMany의 경우 내부적으로 중간테이블이 생성되기에 개발자가 선제적으로 중간테이블을 생성하여 관리하는것이 편하고, 나아가 해당 중간테이블에 어떠한 비즈니스 로직에 의해 컬럼을 추가하면 하나의 엔티티로 승격된다고 이해하였습니다. ManyToMany가 아닌 다른 OneToOne과 같은 관계에서 두개의 테이블이 동시에 조회해야하는 경우가 잦을때 어떠한 비즈니스 로직으로 공통되는 필드가 많을때 이러한 경우에 다대다 관계가 아니더라도 추가적인 중간 테이블 생성이 지향 되는지 질문합니다. 감사합니다.
INFO Starting development server... 10% building 2/5 modules 3 active D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\hot\dev-server.jsError: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at module.exports (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\util\createHash.js:135:53) at NormalModule._initBuildHash (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:417:16) at handleParseError (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:471:10) at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:503:5 at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:358:12 at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:373:3 at iterateNormalLoaders (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:214:10) at iterateNormalLoaders (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:221:10) at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:236:3 at runSyncOrAsync (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:130:11) at iterateNormalLoaders (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:232:2) at Array.<anonymous> (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:205:4) at Storage.finished (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16) at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9 node:internal/crypto/hash:69 this[kHandle] = new _Hash(algorithm, xofLen); ^ Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:69:19) at Object.createHash (node:crypto:138:10) at module.exports (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\util\createHash.js:135:53) at NormalModule._initBuildHash (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:417:16) at handleParseError (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:471:10) at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:503:5 at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\webpack\lib\NormalModule.js:358:12 at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:373:3 at iterateNormalLoaders (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:214:10) at Array.<anonymous> (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\loader-runner\lib\LoaderRunner.js:205:4) at Storage.finished (D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16) at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9 at D:\workspace\study\vue-advanced-13_api-advanced\vue-news\node_modules\graceful-fs\graceful-fs.js:123:16 at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) { opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' } Node.js v20.3.1 혹시 Node.js 버전 문제일까요?
Filter 처리 후 SecurityContextHolder에 주입 그 후 컨트롤러에서 @AuthenticationPrincipal 로 가져올 시 null 현상이 일어납니다. 컨트롤러 단에서 SecurityContextHolder 에서 꺼내서 Principal 가져올 시 존재하는데 어노테이션을 통하여 사용하려고 하니 null 이 뜨네요.. 혹시 무언가 잘못된 부분이 있을까요 ..? Security 인증은 따로 사용하지 않고 있습니다. Spring Cloud Gateway ->모듈 Fileter -> Controller 로 사용중입니다. SCG에서 토큰 검증 후 uid를 모듈로 넘겨준 후 공통으로 사용하기 위해 AuthenticationPrincipal를 사용하려 합니다. FIlter TokenProvider Test Controller User Entity UserDetails Override
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 네 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 네 [질문 내용] 현재 비즈니스상 Delivery 를 사용하는 곳이 Order 한 곳이라 cascade 를 사용하였는데, 추후에 기능확장으로 인해 다른 곳엔티티에서도 Delivery 를 관리하게 되는 경우 기존의 cascade 를 제거하고 orderService 의 order 비즈니스 로직을 변경해야하는 것일까요?
git push origin master 이걸 입력하면 error: src refspec master does not match any error: failed to push some refs to 'https://github.com/OH-jewoong/Boxiting.git' 위처럼 뜨는데 어떻게 해야 하는 건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] assertThat() 을 타이핑 하는 순간 3초 정도 IDE 가 멈추고 이렇게 actual 타입이 추천(?) 됩니다. 강사님께서는 이런 과정 없이 바로 진행이 되던데 이 설정을 어디서 조절하면 좋을까요..?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
simulatorIP와 emulatorIP가 빨간색 줄로 나타나며 The instance member 'simulatorIP' can't be accessed in an initializer 다음과 같은 오류가 발생합니다. Stackoverflow를 통해 찾아보았으나 구체적으로 무슨 오류인지 파악하기가 어려워 질문드리고자 합니다.
안녕하세요, 강사님. 아래 제 풀이는 in3.txt에 대한 올바른 답을 반환하지 못합니다. 그 이유에 대해서 알 수 있을까요? 즉 강사님의 코드와 제 코드의 차이점에 대해 좀 더 자세히 알 수 있을까요? <강사님 코드> import sys sys.stdin=open("input.txt", "r") dx=[-1, 0, 1, 0] dy=[0, 1, 0, -1] def DFS(x, y): global cnt cnt+=1 board[x][y]=0 for i in range(4): xx=x+dx[i] yy=y+dy[i] if 0<=xx<n and 0<=yy<n and board[xx][yy]==1: DFS(xx, yy) if name =="__main__": n=int(input()) board=[list(map(int, input())) for _ in range(n)] res=[] for i in range(n): for j in range(n): if board[i][j]==1: cnt=0 DFS(i, j) res.append(cnt) print(len(res)) res.sort() for x in res: print(x) <제 코드> import sys sys.stdin=open("input.txt", "r") dx=[-1, 1, 0, 0] dy=[0, 0, -1, 1] # '1'인 지점으로부터 그 주위 '1'인 애들 탐색 def DFS(x,y): global cnt for i in range(4): xx=x+dx[i] yy=y+dy[i] if 0<=xx<n and 0<=yy<n and board[xx][yy]==1: board[xx][yy]=0 cnt+=1 DFS(xx,yy) if name =="__main__": n=int(input()) board=[list(map(int, input())) for _ in range(n)] res=[] # 먼저 '1'인 지점을 출발점으로 삼고 DFS 호출하기 for i in range(n): for j in range(n): if board[i][j]==1: cnt=0 DFS(i,j) res.append(cnt) res.sort() print(len(res)) for x in res: print(x)
보통 다른언어의 경우 다른 클래스파일을 사용할경우 (import 클래스파일) 이런식으로 선언해주어야지만 해당 클래스파일을 사용 할수 있다고 알고있습니다. 그런데 swift의 경우 따로 (import 클래스파일) 을 해주지 않아도 사용이 가능해서 어떤 원리로 작동되는지 궁금합니다.
fetch join 시 alias를 사용해서 필터링하는게 왜 안되는걸까요? 이거에 대한 답변으로 디비상태와 객체상태의 일관성이 깨지게 됨을 보통 얘기하시는것같아요 alias를 사용해서 필터링해버리면 실제 디비에 있는 데이터보다 적은 개수가 나오게 되니까요. 근데 어차피 그 필터링된 결과만을 결과로 리턴해주어야한다면 사용해도 괜찮을 것 같은데 디비상태와 객체상태의 일관성이 깨지는게 왜 문제가될까요? 그래서 생각을 해봤는데 크게 다음인것같아요 - 유지관리어려울 수 있음 - 캐싱문제 근데 저 두 문제가 정말 큰 문제가 되는지를 잘 모르겠어요...; 유지관리 어려울수야 있겠지만 그렇게 까지 어려울지도 잘 모르겠고, 캐싱문제(쿼리결과캐싱)도 저 코드에 의해 영향이 얼마나 많이 갈지..도 잘 모르겠어요 저 유지관리/캐싱 문제가 아니라.. 2차캐시때문인가요? 예를들어서 team과 member가 일대다 연관이고 team을 select해온다는 sql이 있다고 가정 1. fetch join + on 절 : 디비에 있는 일부 데이터 불러옴 2. fetch join 만있어서 디비에있는 모든 데이터 불러옴 하나의 트랜잭션에서 1호출 뒤에 2를 호출하면 디비에 쿼리를 날리긴하지만 이미 team_id에 해당하는 객체가 영속성 컨텍스트에있어서 가져온거버림 그래서 추후에 문제가생길 수 있음 --- 인건가요?