묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결배달앱 클론코딩 [with React Native]
키보드 관련 질문드립니다.
안녕하세요.안드로이드에서 react-native-keyboard-aware-scroll-view 라이브러리 사용해서 인스타그램 댓글창처럼 만들고있는데 FlatList로 댓글을 가져오고맨밑에 인풋창을 누르면 키보드가 상단으로 올라오면서 맨밑에 댓글이 가려지는 현상이있는데 이부분에 대해 해결방법이 있을까요?windowSoftInputMode는 adjustResize고 adjustPan모드로도 해봤는데 이건 맨위에 댓글 부분이 잘려나가더라구요.이것저것 해봤는데 안되서 여기다 질문 남깁니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
list head와 tail
안녕하세요 stl list 구현부를 학습하던중에 head의 역할이 이해가 안되서 인터넷을 찾아봤는데요.head는 첫번째 노드를 가리키는 것tail이 마지막 노드를 가리키는 것 첫 초기화 상태는 head와 tail 서로 next prev를 이용해 가리키고값 삽입 부분에서 head의 next , tail의 prev를 새로운 노드를 가리키게 바꿔주면 되는 것인데.. 설명 내용에는 taill 부분이 빠져있어서 혼란이 왔어요.결론 : 그냥 둘다 통합으로 header로 표현하신건가요??
-
해결됨Spring Boot JWT Tutorial
이게 무슨 에러일까요..
yml파일 두 개 사진대로 둘 다 실행 해봤는데 안되네요.. 뭐가 잘못된 걸까요..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-G 어느 부분이 틀렸는지 모르겠습니다.
안녕하세요 강의 안보고 제 방식대로 일단 작성을 해보았는데 어느 부분이 틀렸는지 모르겠습니다. 예제는 맞는데 계속 오답이 나와서 여기에 질문 올립니다.http://boj.kr/93f413d4caad435dbb67578593137ac9
-
미해결ELK 스택 (ElasticSearch, Logstash, Kibana) 으로 데이터 분석
에러 확인 부탁드립니다
아래 에러 원인과 해결방법좀 부탁드려요(py310) user@user-desktop:~/Desktop/ELK$ curl -XGET localhost:9200 curl: (52) Empty reply from server
-
미해결구성 관리 자동화 도구 - 앤서블(Ansible)
실습코드가 올려져 있나요.
안녕하세요.실습위주의 강의라 이해야 잘 됩니다.다만, 실습코드가 있으면, 도움이 될 것 같습니다.실습코드가 올려져 있는 github 사이트가 있나요.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행을 시키다가 중지시키면
이렇게 빨간 글자들이 나오는데 문제 없는건가요? 강사님은 안뜨시는데 저만 뜨네요
-
해결됨Slack 클론 코딩[실시간 채팅 with React]
concat시 2차원 배열이면 쪼개지지않나요?
원본값을 유지하기위해 concat을 사용하셧는데지금 같은 1차원 배열일때는 문제가 없지만 2차원 배열일 경우 해당 배열이 다쪼개져서 1차원 배열이 되는걸로 알고있습니다 그래서 저는 원본을 유지할때 스프레드 문법을 사용하는데 concat이 더 좋은경우도 있나요?두가지 방법을 다 알려주시긴 하셧는데 차이점이 잇는가 궁금합니다.예시상황const chatData = [[1, 2], [3, 4], [5, 6]];[].concat(...chatData).reverse() => [6, 5, 4, 3, 2, 1][...chatData].reverse()=> [[5, 6], [3, 4], [1, 2]]
-
미해결웹 게임을 만들며 배우는 React
웹팩빌드되었으나 크롬연결이 안됩니다.
제로초님 그대로 따라했고,성공적으로 빌드 되었단 메시지도 받았습니다만, WordRelay.htmld을 실행하면, 이런 메시지가 뜨면서 연결이 안되어, 구글링을 통해, 해결방법을 다 따라해봤습니다. 네트워크 옆에 화살표 제한없음으로 변경해보는 방법은 효과가 없었고, launch.json파일을 수정하면 된다는 글을 보고 따라해봤으나, 아까 나왔던 빨간 메시지와함께 이런 화면이 뜹니다... 어떻게 해야될까요 문제는 이게 세번째하는겁니다. lecture1에서 lecture3까지 완전 처음부터 다시 해봤으나 계속 똑같은 문제가 발생합니다. 이런걸로 리액트공부를 포기하고싶진 않은데, 아무리 해봐도 안되니 너무 답답하네요...
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
twice 앱만들기 성공했어요 감사드립니다
아쉬운 점은for 나 while 등 loop(반복)문을 사용해 코드를 줄이고 싶은데 실력이 아직 ㅎ ㅎ ㅎ
-
미해결재고시스템으로 알아보는 동시성이슈 해결방법
레디스 라이브러리 장단점에 대해서 혼동이 있어서 질문드립니다.
강의 내용에 따르면 Redisson 을 사용하면 락 흭득 재시도를 기본으로 구성한다는 말씀을 해주셨습니다.RedissonLockStockFacade 예제를 보면decrease 메서드 내부에서 getLock 으로 락을 흭득하고 lock.tryLock() 호출을 통해 락을 잡는 다는 것으로 이해하였습니다.이 때 락 흭득 재시도를 lock.tryLock() 내부에서 이루어 지는 건가요??또한 lettuce 사용 시 락 흭득 재시도를 하는 과정은 while(!redisLockRepository.lock(key)) 를 통해서 스핀락 형태로 이루어지는건가요?
-
미해결Three.js로 시작하는 3D 인터랙티브 웹
Studiomeal 소스코드가 궁금합니다.
안녕하세요! 클론코딩형식으로 studiomeal을 구현해보고싶은데 방명록 작성이나 동영상을 띄우는 부분이 너무 궁금해서 혹시 소스가 오픈되어있는지 궁금합니다.! 추가적으로 해보려고 하는게 사용자가 사진과 제목과 내용을 작성하면 이미지, 제목, 내용이 액자처럼 되어서 마치 미술관에 전시된 그림과 제목과 내용을 확인할 수 있는 것처럼 구현해보고 싶은데 조언 부탁드립니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
WAS 에 오류가 전달되는 방식의 차이에 대해 질문있습니다.
ServletExController 에서 sendError() 로 직접 오류를 WAS 에 전달해주면 Exception 이 터지지않은 것으로 간주되어 ErrorPageController 에서 사용중인httpServletRequest.getAttribute(ERROR_EXCEPTION) 의 결과가 로그에 찍히지않은 것이고, Exception 을 throw 해주어 간접적으로 WAS 에게 오류를 전달해주면 Exception 이 터진것으로 간주되어 httpServletRequest.getAttribute(ERROR_EXCEPTION) 의 결과가 로그에 찍힌것으로 이해하면 될까요? 답변부탁드리겠습니다!!
-
미해결비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
certbot과 git충돌 질문자 입니다.
안녕하세요. certbot 실행 이후 git clone이 되지 않아 질문을 남겼었던 질문자입니다!당시 얼추 인도해주신 솔루션이 인스턴스 설정 초기화 후 새로 설치 였던터라 시간이 걸릴것으로 예상이 되어서 우선순위를 좀 뒤로 미루고, 다른 일들을 하다가 오느라 이제야 다시 질문의 일로 돌아왔습니다.그런데 이제와 생각해보니 certbot 과 git의 충돌이 유력한 원인이라면... certbot을 재설치? 재실행? 하면 되지 않을까 싶어서 인터넷에 검색을 해봤는데 자동갱신에 관한 글뿐이 없더군요.. 해서 혹시 certbot을 날렸다가 다시 설치하거나 certbot의 설정파일들이 임시로 작동하지 않도록 하는 방법이 있을까요?만약 임시 비활성화가 가능하다면 그 사이에 git clone을 진행하고, 다시 활성화 하면 될것 같아서.. 혹시 아시는 방법이 있으실지 여쭤봅니다
-
미해결비트코인 선물거래 자동매매 시스템(저자직강)
선생님 타지표 문의 드립니다.
혹시 실시간으로 zigzag 지표를읽어드리고 싶은데어떻게 불러서 사용해야 하는지 알려주시면 감사하겠습니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
Tomcat manager 로그인 문제
1번 질문 Started by user Administrator Running as SYSTEM Building in workspace /var/jenkins_home/workspace/Third The recommended git tool is: NONE No credentials specified > git rev-parse --resolve-git-dir /var/jenkins_home/workspace/Third/.git # timeout=10 Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/joneconsulting/cicd-web-project # timeout=10 Fetching upstream changes from https://github.com/joneconsulting/cicd-web-project > git --version # timeout=10 > git --version # 'git version 2.30.2' > git fetch --tags --force --progress -- https://github.com/joneconsulting/cicd-web-project +refs/heads/*:refs/remotes/origin/* # timeout=10 > git rev-parse refs/remotes/origin/master^{commit} # timeout=10 Checking out Revision f9b8f5340aeeba8d86db9eabc33d1ef2f892de4b (refs/remotes/origin/master) > git config core.sparsecheckout # timeout=10 > git checkout -f f9b8f5340aeeba8d86db9eabc33d1ef2f892de4b # timeout=10 Commit message: "added the master branch" > git rev-list --no-walk f9b8f5340aeeba8d86db9eabc33d1ef2f892de4b # timeout=10 Parsing POMs Established TCP socket on 37583 [Third] $ java -cp /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.14.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven3.9.3/boot/plexus-classworlds-2.7.0.jar:/var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven3.9.3/conf/logging jenkins.maven3.agent.Maven35Main /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/Maven3.9.3 /var/jenkins_home/war/WEB-INF/lib/remoting-3107.v665000b_51092.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven35-interceptor-1.14.jar /var/jenkins_home/plugins/maven-plugin/WEB-INF/lib/maven3-interceptor-commons-1.14.jar 37583 <===[JENKINS REMOTING CAPACITY]===>channel started Executing Maven: -B -f /var/jenkins_home/workspace/Third/pom.xml clean compile package [INFO] Scanning for projects... [INFO] [INFO] ----------------------< com.njonecompany.web:web >---------------------- [INFO] Building cicd-web-project maven webapp 1.0 [INFO] from pom.xml [INFO] --------------------------------[ war ]--------------------------------- [INFO] [INFO] --- clean:3.2.0:clean (default-clean) @ web --- [INFO] Deleting /var/jenkins_home/workspace/Third/target [INFO] [INFO] --- resources:3.3.1:resources (default-resources) @ web --- [INFO] Copying 1 resource from src/main/resources to target/classes [INFO] [INFO] --- compiler:3.11.0:compile (default-compile) @ web --- [INFO] Changes detected - recompiling the module! :source [INFO] Compiling 3 source files with javac [debug target 1.8] to target/classes [WARNING] bootstrap class path not set in conjunction with -source 8 [INFO] [INFO] --- resources:3.3.1:resources (default-resources) @ web --- [INFO] Copying 1 resource from src/main/resources to target/classes [INFO] [INFO] --- compiler:3.11.0:compile (default-compile) @ web --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- resources:3.3.1:testResources (default-testResources) @ web --- [INFO] skip non existing resourceDirectory /var/jenkins_home/workspace/Third/src/test/resources [INFO] [INFO] --- compiler:3.11.0:testCompile (default-testCompile) @ web --- [INFO] Changes detected - recompiling the module! :dependency [INFO] Compiling 1 source file with javac [debug target 1.8] to target/test-classes [WARNING] bootstrap class path not set in conjunction with -source 8 [INFO] [INFO] --- surefire:2.22.0:test (default-test) @ web --- [INFO] [INFO] ------------------------------------------------------- [INFO] T E S T S [INFO] ------------------------------------------------------- [INFO] Running com.njonecompany.web.TestWelcome 10:40:32,162 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] 10:40:32,162 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy] 10:40:32,162 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/var/jenkins_home/workspace/Third/target/classes/logback.xml] 10:40:32,209 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set 10:40:32,209 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender] 10:40:32,212 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT] 10:40:32,242 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - This appender no longer admits a layout as a sub-component, set an encoder instead. 10:40:32,242 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - To ensure compatibility, wrapping your layout in LayoutWrappingEncoder. 10:40:32,242 |-WARN in ch.qos.logback.core.ConsoleAppender[STDOUT] - See also http://logback.qos.ch/codes.html#layoutInsteadOfEncoder for details 10:40:32,242 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [com.njonecompany.web] to DEBUG 10:40:32,242 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [com.njonecompany.web] to false 10:40:32,242 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[com.njonecompany.web] 10:40:32,242 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to ERROR 10:40:32,242 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT] 10:40:32,242 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration. 10:40:32,243 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@5fb759d6 - Registering current configuration as safe fallback point 2023-07-29 10:40:32 [main] DEBUG c.n.web.controller.WelcomeController - Welcome to njonecompany.com... Sat Jul 29 10:40:32 UTC 2023 MockHttpServletRequest: HTTP Method = GET Request URI = / Parameters = {} Headers = [] Body = <no character encoding set> Session Attrs = {} Handler: Type = com.njonecompany.web.controller.WelcomeController Method = com.njonecompany.web.controller.WelcomeController#index(Model) Async: Async started = false Async result = null Resolved Exception: Type = null ModelAndView: View name = index View = null Attribute = msg value = Hi, there Attribute = today value = Sat Jul 29 10:40:32 UTC 2023 FlashMap: Attributes = null MockHttpServletResponse: Status = 200 Error message = null Headers = [Content-Language:"en"] Content type = null Body = Forwarded URL = /WEB-INF/views/index.jsp Redirected URL = null Cookies = [] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.592 s - in com.njonecompany.web.TestWelcome [INFO] [INFO] Results: [INFO] [INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] [JENKINS] Recording test results [INFO] [INFO] --- war:3.2.2:war (default-war) @ web --- [INFO] Packaging webapp [INFO] Assembling webapp [web] in [/var/jenkins_home/workspace/Third/target/hello-world] [INFO] Processing war project [INFO] Copying webapp resources [/var/jenkins_home/workspace/Third/src/main/webapp] [INFO] Webapp assembled in [27 msecs] [INFO] Building war: /var/jenkins_home/workspace/Third/target/hello-world.war [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 4.349 s [INFO] Finished at: 2023-07-29T10:40:34Z [INFO] ------------------------------------------------------------------------ Waiting for Jenkins to finish collecting data [JENKINS] Archiving /var/jenkins_home/workspace/Third/pom.xml to com.njonecompany.web/web/1.0/web-1.0.pom [JENKINS] Archiving /var/jenkins_home/workspace/Third/target/hello-world.war to com.njonecompany.web/web/1.0/web-1.0.war [DeployPublisher][INFO] Attempting to deploy 1 war file(s) [DeployPublisher][INFO] Deploying /var/jenkins_home/workspace/Third/target/hello-world.war to container Tomcat 9.x Remote with context null ERROR: Build step failed with exception org.codehaus.cargo.container.ContainerException: Failed to redeploy [/var/jenkins_home/workspace/Third/target/hello-world.war] at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:176) at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81) at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167) at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136) at hudson.FilePath.act(FilePath.java:1198) at hudson.FilePath.act(FilePath.java:1181) at hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133) at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95) at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80) at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:767) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1072) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:711) at hudson.model.Run.execute(Run.java:1925) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:442) Caused by: org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: The username and password you provided are not correct (error 401) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:704) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:882) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:895) at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:161) ... 19 more Caused by: java.io.IOException: Server returned HTTP response code: 401 for URL: http://192.168.0.14:8088/manager/text/list at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1924) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:577) ... 22 more org.codehaus.cargo.container.tomcat.internal.TomcatManagerException: The username and password you provided are not correct (error 401) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:704) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:882) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:895) at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:161) at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:81) at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:167) at hudson.plugins.deploy.CargoContainerAdapter$DeployCallable.invoke(CargoContainerAdapter.java:136) at hudson.FilePath.act(FilePath.java:1198) at hudson.FilePath.act(FilePath.java:1181) at hudson.plugins.deploy.CargoContainerAdapter.redeployFile(CargoContainerAdapter.java:133) at hudson.plugins.deploy.PasswordProtectedAdapterCargo.redeployFile(PasswordProtectedAdapterCargo.java:95) at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:113) at jenkins.tasks.SimpleBuildStep.perform(SimpleBuildStep.java:123) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:80) at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:47) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:767) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1072) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:711) at hudson.model.Run.execute(Run.java:1925) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:543) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:442) Caused by: java.io.IOException: Server returned HTTP response code: 401 for URL: http://192.168.0.14:8088/manager/text/list at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1924) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1520) at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:577) ... 22 more Build step 'Deploy war/ear to a container' marked build as failure Finished: FAILURE2번 질문 Tomcat > Manager App 로그인이 안 됩니다,,설정하신대로 따라 해서 8088 서버는 접속이 되나, Manager App 아이디 비번이 계속 오류가 있는 것으로 보아 어딘가에서 문제가 있는 것 같습니다.그래서 jenkins에서 Third project build 진행할 때도 역시 오류가 뜨는 것 같습니다. m1 pro 사용중입니다.
-
미해결우디의 일러스트레이터 강좌
버전 확인하는법
일러스트 2023 인거 같은데 이건 CC 인가요 아니면 Cs…? 인가요 그리고 CC와 Cs 의 차이는 멀까요,,,,
-
해결됨스프링 핵심 원리 - 기본편
Extract Method 창이 안 생깁니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 네3. 질문 잘하기 메뉴얼을 읽어보셨나요? 네[질문 내용]Ctrl + Alt + m 누르고 다시 m 눌러도 안되고 Geforce Experience를 들어가서 게임 내 오버레이 기능을 OFF하면 된다는데 전 그것도 안 깔려져 있습니다. 어떻게 하면 해결할까요?
-
미해결스프링부트 시큐리티 & JWT 강의
[5강] admin, manager로 로그인시 403에러
안녕하세요! 강의 잘 듣고 있습니다.다름이 아니라 5강을 진행하던 중, DB에서 ROLE_ADMIN, ROLE_MANAGER로 바꾸어 주었는데도 403에러가 떠서 질문드립니다.<SecurityConfig>package com.example.SpringSecurity.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;import org.springframework.security.config.annotation.web.builders.HttpSecurity;import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer;import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;import org.springframework.security.web.SecurityFilterChain;@Configuration@EnableWebSecurity // 스프링 시큐리티 필터가 스프링 필터체인에 등록이 됨.@EnableMethodSecurity(securedEnabled = true)public class SecurityConfig {@Bean public BCryptPasswordEncoder encodePwd(){return new BCryptPasswordEncoder(); }@Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {return http.csrf(AbstractHttpConfigurer::disable) // 사이트 위변조 요청 방지 .authorizeHttpRequests((authorizeRequests) -> { // 특정 URL에 대한 권한 설정. authorizeRequests.requestMatchers("/user/**").authenticated(); authorizeRequests.requestMatchers("/manager/**").hasAnyRole("ADMIN", "MANAGER"); // ROLE_은 붙이면 안 된다. hasAnyRole()을 사용할 때 자동으로 ROLE_이 붙기 때문이다. authorizeRequests.requestMatchers("/admin/**").hasRole("ADMIN"); // ROLE_은 붙이면 안 된다. hasRole()을 사용할 때 자동으로 ROLE_이 붙기 때문이다. authorizeRequests.anyRequest().permitAll(); }).formLogin((formLogin) -> {formLogin.loginPage("/loginForm") // 권한이 필요한 요청은 해당 url로 리다이렉트 .loginProcessingUrl("/login") // login 주소가 호출되면 시큐리티가 낚아채서 대신 로그인을 해준다. .defaultSuccessUrl("/"); //로그인 성공시 /주소로 이동 }).build(); }} <IndexController> package com.example.SpringSecurity.controller;import com.example.SpringSecurity.model.User;import com.example.SpringSecurity.repository.UserRepository;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.ResponseBody;@Controllerpublic class IndexController {@Autowired private UserRepository userRepository; @Autowired private BCryptPasswordEncoder bCryptPasswordEncoder; @GetMapping({"/",""})public String index(){return "index"; }@GetMapping("/user")public @ResponseBody String user(){return "user"; }@GetMapping("/admin")public @ResponseBody String admin(){return "admin"; }@GetMapping("/manager")public @ResponseBody String manager(){return "manager"; }@GetMapping("/loginForm")public String loginForm(){return "loginForm"; }@GetMapping("/joinForm")public String joinForm(){return "joinForm"; }@PostMapping("/join")public String join(User user){System.out.println(user); user.setRole("ROLE_USER"); String rawPassword = user.getPassword(); String encPassword = bCryptPasswordEncoder.encode(rawPassword); user.setPassword(encPassword); userRepository.save(user); // 패스워드가 암호화가 안되어있으면, 회원가입은 잘되나 Security를 이용해 로그인 할 수 없다. return "redirect:/loginForm"; }@GetMapping("/info")public @ResponseBody String info(){return "개인정보"; }} 코드는 이러합니다. SecurityConfig는 v6이어서 수정하였습니다. 에러 해결에 도움 부탁드려요,,항상 좋은 강의 감사합니다!
-
해결됨Slack 클론 코딩[실시간 채팅 with React]
react-custom-scrollbars 를 최상위 컴포넌트에 적용하면 시스템 스크롤바가 안생길까요?
기존 윈도우 스크롤바의 경우 스크롤바가 width를 잡아먹어 의도햇던 디자인이 찌그러 지는경우가 있어서 고민이엿습니다.이번 강의에서 알려주신 react-custom-scrollbars 의경우 width를 잡아먹지 않고 내부에 생성되는걸로 확인되는데vw,vh를 100%로 잡은 최상위 레이아웃을 만들고 react-custom-scrollbars 를 추가한뒤 그 자식으로 기존 코드들을 옮기려 합니다.이때 문제가 될만한 이슈 또는 더 나은 방법이 잇을까요?