묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결핸즈온 리액트 네이티브
강의 8.8 로그인 유지 질문입니다,
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.강의의 내용을 벗어나는 질문 혹은 관련 없는 질문에 대해서는 답변하지 않습니다. (ex. 자바스크립트, 강의에서 사용하지 않는 라이브러리, 강의 내용과 다르게 진행한 프로젝트에 대한 질문)<질문 남기기 전에 스스로 해결하는 연습을 해보세요>- 스스로 문제를 해결하는 연습은 여러분의 실력향상에 큰 영향을 미칩니다. 1. 차분하게 여러분 코드의 오타 여부를 확인해 주세요. 2. 발생한 문제를 구글에서 검색해서 확인해 보세요. <잘 해결이 안 될 때에는, 질문을 남겨주세요>1. 코드에 질문이 있다면 코드를 깃헙(https://github.com/)에 올리고 주소 링크를 남겨주세요. 2. 문제 발생 상황 등, 내용을 자세히 작성해주세요. 깃헙을 보구 비교해봤는데 아무리봐도 오타도 없구 괜찮은거 같은데 로그인 한후 새로고침을 하면 다시 로그인 화면으로 돌아갑니다...저의 깃헙주소 남겨요~https://github.com/JunseongKim0105/final-project.git
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
실습 프로젝트를 멀티로 구성해서 하나의 프로젝트로 관리하기
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 강의 실습을 계속하면서 프로젝트를 여러개 생성하게 되는데요.프로젝트가 늘어남에 따라 특정 프로젝트 수행했던 내용을 보려면 현재 프로젝트를 닫고 이전 프로젝트를 열어야 하는데요.강의에 사용하는 전체 프로젝트를 인텔리제이에서 하나로 관리할 수는 없을까요?서로 다른 프로젝트에 영향이 없게 독립적으로 실행할 수 있게요.조언 부탁드립니다.감사합니다.
-
해결됨파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
txt 파일 input 문제
안녕하세요 1강 문제를 푸는데 계속 아래와 같은 에러가 뜹니다..txt파일과 py파일은 한 폴더 안에 존재합니다. (vscode를 이용 중입니다.)open('./input.txt', 'rt')open('./input', 'rt')open('input.txt', 'rt')open('input', 'rt') 등 다양한 방법으로 open해봐도 문제가 생기는군요..
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
저 vs code를 사용중인데, 코팩님처럼 코드 자동완성을 하고 싶은데요... 방법을 모르겠어요...
저 vs code를 사용중인데, 코팩님처럼 코드 자동완성을 하고 싶은데요... 방법을 모르겠어요...이런저런 확장을 다 깔아봐도 잘 안돼요...Navigator.of(까지만 쳐도 context)똭 나오고 MaterialPageRoute( 까지만 치니까 안에 파라미터로 뭘 넣어야하는지 포맷까지 똭 나오는 그런 거... vs 코드는 안되는 건가요? ㅠㅠ 그냥 공부하는 거랑은 상관 없는 얘기긴 한데 은근히 불편해서... 답변해주시면 감사하겠습니다.. ^^ 기다릴게용 ㅎ
-
미해결AWS Certified Advanced Networking - Specialty 자격증 준비하기
업데이트 강의 목록
안녕하세요.이번에 업데이트된 강의 목록을 알 수 있을까요?전체적으로 변경된건 아닌것 같은데 업데이트된 강의만 다시 보려고 합니다.
-
해결됨모의해킹 실무자가 알려주는, XSS 공격 기법
DOM과 Reflected XSS 차이
안녕하세요. XSS 강의 잘 수강하고 있습니다.제목 그대로 DOM XSS와 Reflected XSS의 차이에 대해서 궁금한게 있어서 문의드립니다. DOM based XSS와 Reflected XSS의 차이가 클라이언트 측에서 동적 페이지를 구성하냐, 서버 측에서 구성하냐라고 하셨는데, Reflected XSS에서 서버 측 어플리케이션 단에서 동적 페이지를 구성한다는게 조금 이해가 안 가서 그러는데 혹시 예시를 들어주실 수 있을까요?감사합니다.
-
해결됨토비의 스프링 부트 - 이해와 원리
@ComponentScan과 @Configuration
안녕하세요! 좋은 강의 너무 감사하고 잘 듣고 있습니다.이번 수업을 듣던 중에 @ComponentScan 애노테이션과 @Configuration 애노테이션을 함께 사용하는 이유가 궁금해서 찾아봤습니다.찾아본 결과는 다음과 같습니다.@Configuration 애노테이션이 없는 경우 Spring에서 구성정보를 제공하지 않는다는 것을 의미하기 때문에 @ComponentScan이 스캔할 패키지 내에서 Bean으로 등록할 클래스를 찾지 않는다.저는 @ComponentScan이 해당 애노테이션이 달린 패키지부터 하위 패키지까지 @Component 애노테이션이 달린 모든 클래스들을 빈으로 등록해주는 역할을 한다고 생각했는데, 위가 아니라 @ComponentScan이 @Component 애노테이션이 달린 모든 클래스들을 찾고 @Configuration이 해당 클래스들을 빈으로 등록해주기 때문에 같이 사용한다로 이해해도 될까요?
-
미해결프로그래머를 위한 강화학습(저자 직강)
PPO에서 min()을 사용하는 이유가 궁금합니다
설명해주신대로면,min()을 사용하지 않아도 이미 clip()을 통해서 r()이 상항과 하한을 넘기면 a 혹은 b로 고정되고, 그 범위 안에 들어가면 r()이 그대로 나오는 것으로 생각됩니다. min()이 여기서 어떠한 역할을 하는지 궁금합니다.=> 범위 안에 있을때 r(original) 과 r(clipped)가 달라지는 경우가 있나요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
setuptools 버전 오류
pip install -r yolov3/requirements.txt모듈 설치중에"ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. cvxpy 1.3.0 requires setuptools<=64.0.2, but you have setuptools 67.6.0 which is incompatible."setuptools 버전 오류가 뜨면서 모듈 설치가 원활하게 진행되지 않습니다.어떤 방법으로 해결해야 할까요?모든 코드Cloning into 'yolov3'... remote: Enumerating objects: 10324, done. remote: Counting objects: 100% (246/246), done. remote: Compressing objects: 100% (193/193), done. remote: Total 10324 (delta 110), reused 148 (delta 52), pack-reused 10078 Receiving objects: 100% (10324/10324), 9.70 MiB | 12.12 MiB/s, done. Resolving deltas: 100% (6909/6909), done. Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/ Collecting gitpython Downloading GitPython-3.1.31-py3-none-any.whl (184 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 184.3/184.3 KB 10.1 MB/s eta 0:00:00 Requirement already satisfied: ipython in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 6)) (7.9.0) Requirement already satisfied: matplotlib>=3.2.2 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 7)) (3.7.1) Requirement already satisfied: numpy>=1.18.5 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 8)) (1.22.4) Requirement already satisfied: opencv-python>=4.1.1 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 9)) (4.7.0.72) Requirement already satisfied: Pillow>=7.1.2 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 10)) (8.4.0) Requirement already satisfied: psutil in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 11)) (5.9.4) Requirement already satisfied: PyYAML>=5.3.1 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 12)) (6.0) Requirement already satisfied: requests>=2.23.0 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 13)) (2.27.1) Requirement already satisfied: scipy>=1.4.1 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 14)) (1.10.1) Collecting thop>=0.1.1 Downloading thop-0.1.1.post2209072238-py3-none-any.whl (15 kB) Requirement already satisfied: torch>=1.7.0 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 16)) (1.13.1+cu116) Requirement already satisfied: torchvision>=0.8.1 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 17)) (0.14.1+cu116) Requirement already satisfied: tqdm>=4.64.0 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 18)) (4.65.0) Requirement already satisfied: tensorboard>=2.4.1 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 22)) (2.11.2) Requirement already satisfied: pandas>=1.1.4 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 27)) (1.4.4) Requirement already satisfied: seaborn>=0.11.0 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 28)) (0.12.2) Collecting setuptools>=65.5.1 Downloading setuptools-67.6.0-py3-none-any.whl (1.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 55.5 MB/s eta 0:00:00 Requirement already satisfied: wheel>=0.38.0 in /usr/local/lib/python3.9/dist-packages (from -r yolov3/requirements.txt (line 43)) (0.40.0) Collecting gitdb<5,>=4.0.1 Downloading gitdb-4.0.10-py3-none-any.whl (62 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.7/62.7 KB 7.6 MB/s eta 0:00:00 Requirement already satisfied: decorator in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (4.4.2) Requirement already satisfied: pygments in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (2.6.1) Requirement already satisfied: pickleshare in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (0.7.5) Requirement already satisfied: traitlets>=4.2 in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (5.7.1) Requirement already satisfied: prompt-toolkit<2.1.0,>=2.0.0 in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (2.0.10) Requirement already satisfied: pexpect in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (4.8.0) Collecting jedi>=0.10 Downloading jedi-0.18.2-py2.py3-none-any.whl (1.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 64.3 MB/s eta 0:00:00 Requirement already satisfied: backcall in /usr/local/lib/python3.9/dist-packages (from ipython->-r yolov3/requirements.txt (line 6)) (0.2.0) Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (1.4.4) Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (23.0) Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (3.0.9) Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (1.0.7) Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (4.39.0) Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (2.8.2) Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (0.11.0) Requirement already satisfied: importlib-resources>=3.2.0 in /usr/local/lib/python3.9/dist-packages (from matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (5.12.0) Requirement already satisfied: charset-normalizer~=2.0.0 in /usr/local/lib/python3.9/dist-packages (from requests>=2.23.0->-r yolov3/requirements.txt (line 13)) (2.0.12) Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.9/dist-packages (from requests>=2.23.0->-r yolov3/requirements.txt (line 13)) (2022.12.7) Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/local/lib/python3.9/dist-packages (from requests>=2.23.0->-r yolov3/requirements.txt (line 13)) (1.26.15) Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.9/dist-packages (from requests>=2.23.0->-r yolov3/requirements.txt (line 13)) (3.4) Requirement already satisfied: typing-extensions in /usr/local/lib/python3.9/dist-packages (from torch>=1.7.0->-r yolov3/requirements.txt (line 16)) (4.5.0) Requirement already satisfied: google-auth<3,>=1.6.3 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (2.16.2) Requirement already satisfied: protobuf<4,>=3.9.2 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (3.19.6) Requirement already satisfied: absl-py>=0.4 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (1.4.0) Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (0.4.6) Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (0.6.1) Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (1.8.1) Requirement already satisfied: werkzeug>=1.0.1 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (2.2.3) Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (3.4.1) Requirement already satisfied: grpcio>=1.24.3 in /usr/local/lib/python3.9/dist-packages (from tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (1.51.3) Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.9/dist-packages (from pandas>=1.1.4->-r yolov3/requirements.txt (line 27)) (2022.7.1) Collecting smmap<6,>=3.0.1 Downloading smmap-5.0.0-py3-none-any.whl (24 kB) Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.9/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (5.3.0) Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.9/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (0.2.8) Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.9/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (1.15.0) Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.9/dist-packages (from google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (4.9) Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.9/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (1.3.1) Requirement already satisfied: zipp>=3.1.0 in /usr/local/lib/python3.9/dist-packages (from importlib-resources>=3.2.0->matplotlib>=3.2.2->-r yolov3/requirements.txt (line 7)) (3.15.0) Requirement already satisfied: parso<0.9.0,>=0.8.0 in /usr/local/lib/python3.9/dist-packages (from jedi>=0.10->ipython->-r yolov3/requirements.txt (line 6)) (0.8.3) Requirement already satisfied: importlib-metadata>=4.4 in /usr/local/lib/python3.9/dist-packages (from markdown>=2.6.8->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (6.0.0) Requirement already satisfied: wcwidth in /usr/local/lib/python3.9/dist-packages (from prompt-toolkit<2.1.0,>=2.0.0->ipython->-r yolov3/requirements.txt (line 6)) (0.2.6) Requirement already satisfied: MarkupSafe>=2.1.1 in /usr/local/lib/python3.9/dist-packages (from werkzeug>=1.0.1->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (2.1.2) Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.9/dist-packages (from pexpect->ipython->-r yolov3/requirements.txt (line 6)) (0.7.0) Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.9/dist-packages (from pyasn1-modules>=0.2.1->google-auth<3,>=1.6.3->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (0.4.8) Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.9/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard>=2.4.1->-r yolov3/requirements.txt (line 22)) (3.2.2) Installing collected packages: smmap, setuptools, jedi, thop, gitdb, gitpython Attempting uninstall: setuptools Found existing installation: setuptools 63.4.3 Uninstalling setuptools-63.4.3: Successfully uninstalled setuptools-63.4.3 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. cvxpy 1.3.0 requires setuptools<=64.0.2, but you have setuptools 67.6.0 which is incompatible. Successfully installed gitdb-4.0.10 gitpython-3.1.31 jedi-0.18.2 setuptools-67.6.0 smmap-5.0.0 thop-0.1.1.post2209072238
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
PUT 메서드의 스토어 관련 질문 드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]파일을 저장할 시에는 클라이언트가 리소스의 URI를 생성하기 때문에 PUT을 이용하여 등록한다고 말씀해주셨습니다.이미지 파일을 DB에 등록하고 클라이언트가 해당 파일의 이름으로 URI를 생성하였을 때, /files/star.jpg 다른 유저가 다른 이미지 파일을 같은 star.jpg로 등록하게 된다면 DB의 이미지가 변경되지 않나요?PUT은 완전히 대체되기 때문에 위와 같은 상황이 벌어지는 것으로 이해했는데 클라이언트가 URI를 지정한다는 것이 이해가 되지 않습니다. 잘못 이해한 부분이 있을까요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
배치파일을 실행하려고 하니 오류가 뜹니다
이렇게 뜨는데 어떻게해야할까요..?ㅠㅠ
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요.
안녕하세요.현재 새로 나온 노드 교과서 이북과 현영님께서 주신 현물 책도 가지고 있는 상황에서 공부를 시작하려고 하는데 강의 결제 후 같이 보는건 어떨까요??공부하는데 돈은 아끼면 안된다고 생각하는 편이라 학습 효율이 가장 중요합니다. 예전에 유튜브로 하나만 구매하면 된다곤 하셨는데 둘 다 병행하면서 보면 어떨지 궁금합니다. 그리고 만약 하나를 선택 한다면 책, 강좌 중 뭐가 더 괜찮을지 혹은 개인의 성향 차이일지도 궁금합니다.항상 좋은 강좌 감사합니다.
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Badge Flutter 3.7 현재 상환
지금 flutter 3.7상태에서는 바로 Badge를 사용하지 못합니다Flutter 3.7에서는 Badge 위젯이 Material 라이브러리에 도입되었으므로 모호한 가져오기를 피하려면 다음과 같이 패키지를 가져와야 합니다.import 'package:badges/badges.dart' as badges; 그런 다음 "Badge" 위젯 대신 "badges.Badge" 위젯을 사용합니다. 이 패키지의 모든 클래스에 대해 동일합니다.
-
미해결스프링 시큐리티
접근이 거부되었습니다. 예외가 발생합니다.
5) 웹 기반 인가처리 DB 연동 - FilterInvocationSecurityMetadataSource (2) 강의 관련 질문입니다. 참고로, 현재 SecurityConfig 파일이 파일명으로 구분해서 Ajax 인증용과 폼인증 두개 입니다.문제는 로그인까지 성공하고 /mypage 로 들어가면 접근 거부 예외가 생깁니다.'org.springframework.security.access.AccessDeniedException: 접근이 거부되었습니다.' SecurityConfig , AjaxSecurityConfig 설정파일명으로 구분했고 마지막에설정 코드도 올렸지만 authenticationManager 같은 Bean 메서드들도 이름으로 구분했습니다. 사용자정보, 권한정보등 제대로 갖고 왔는데 어디가 잘못된건지 잘모르겠네요..혹시 시큐리티 설정파일에서 서비스 클래스 두가지를 사용해서 그런지 의심도 되고 그렇네요..private final SecurityResourceService securityResourceService;private final UserDetailsService userDetailsService; 아래에 도움이 될까 해서 디버깅화면 캡쳐해서 올렸습니다.그리고 코드는 아래 깃허브에 올렸습니다.walnutnamu/corespringsecurity (github.com)감사합니다. AbstractSecurityInterceptor 클래스UrlFilterInvocationSecurityMetadataSource 클래스 RoleVoter 클래스ExceptionTranslationFilter 클래스FormAccessDeniedHandler 클래스AccessDeniedException 클래스 웹페이지에는 흰 배경만 나타나고 302 코드를 반환하네요.Request URL:http://localhost:8080/mypageRequest Method:GETStatus Code:302Remote Address:[::1]:8080Referrer Policy:strict-origin-when-cross-orig 시큐리티 설정파일 @Configuration@RequiredArgsConstructor@Order(1)public class SecurityConfig {@Beanpublic WebSecurityCustomizer configure() {return (web) -> web.ignoring().mvcMatchers("/css/**","/js/**","/error");}private final AuthenticationConfiguration authenticationConfiguration;private final AuthenticationDetailsSource authenticationDetailsSource;private final AuthenticationSuccessHandler formAuthenticationSuccessHandler;private final AuthenticationFailureHandler formAuthenticationFailureHandler;private final SecurityResourceService securityResourceService;private final UserDetailsService userDetailsService;public PasswordEncoder passwordEncoder() {return PasswordEncoderFactories.createDelegatingPasswordEncoder();}@Beanpublic SecurityFilterChain filterChain(HttpSecurity http) throws Exception {http.authorizeRequests().antMatchers("/", "/users", "user/login/**", "/login*").permitAll().antMatchers("/mypage").hasRole("USER").antMatchers("/messages").hasRole("MANAGER").antMatchers("/config").hasRole("ADMIN").anyRequest().authenticated().and().exceptionHandling()//.accessDeniedPage("/denied").accessDeniedHandler(accessDeniedHandler()).and().addFilterBefore(customFilterSecurityInterceptor(), FilterSecurityInterceptor.class);http.formLogin().loginPage("/login").loginProcessingUrl("/login_proc").authenticationDetailsSource(authenticationDetailsSource).defaultSuccessUrl("/").successHandler(formAuthenticationSuccessHandler).failureHandler(formAuthenticationFailureHandler).permitAll();//http.csrf().disable();return http.build();}public FormAuthenticationProvider formAuthenticationProvider() {return new FormAuthenticationProvider(userDetailsService, passwordEncoder());}@Beanpublic AccessDeniedHandler accessDeniedHandler(){FormAccessDeniedHandler accessDeniedHandler = new FormAccessDeniedHandler();accessDeniedHandler.setErrorPage("/denied");return accessDeniedHandler;}@Beanpublic AuthenticationManager authenticationManager(AuthenticationConfiguration authenticationConfiguration) throws Exception {ProviderManager authenticationManager = (ProviderManager) authenticationConfiguration.getAuthenticationManager();authenticationManager.getProviders().add(formAuthenticationProvider());return authenticationManager;}@Beanpublic FilterSecurityInterceptor customFilterSecurityInterceptor() throws Exception {FilterSecurityInterceptor filterSecurityInterceptor = new FilterSecurityInterceptor();filterSecurityInterceptor.setSecurityMetadataSource(urlFilterInvocationSecurityMetadataSource());filterSecurityInterceptor.setAccessDecisionManager(affirmativeBased());filterSecurityInterceptor.setAuthenticationManager(authenticationManager(authenticationConfiguration));return filterSecurityInterceptor;}public AccessDecisionManager affirmativeBased() {AffirmativeBased affirmativeBased = new AffirmativeBased(getAccessDecisionVoters());return affirmativeBased;}private List<AccessDecisionVoter<?>> getAccessDecisionVoters() {return Arrays.asList(new RoleVoter());}/*** 자원/권한 정보를 저장하고 있는 클래스를 빈으로 생성* @return* @throws Exception*/@Beanpublic FilterInvocationSecurityMetadataSource urlFilterInvocationSecurityMetadataSource() throws Exception {return new UrlFilterInvocationSecurityMetadataSource(urlResourcesMapFactoryBean().getObject());}private UrlResourcesMapFactoryBean urlResourcesMapFactoryBean() {UrlResourcesMapFactoryBean urlResourcesMapFactoryBean = new UrlResourcesMapFactoryBean();urlResourcesMapFactoryBean.setSecurityResourceService(securityResourceService);return urlResourcesMapFactoryBean;}}
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[3-G 질문] 오버플로우 다르게 확인 하는 법..
안녕하세요 큰돌님!덕분에, 코테도 준비하며 강의도 잘 보고 있습니다. http://boj.kr/320a351402cb451d8aff7a538e73189d3-G 문제를 공부하면서 질문이 있습니다.Q1. 오버플로우 확인 할 때, 이렇게 작성하면 어떤 문제가 생기나요? visited[next] == visited[here]+1 과 같이, 소모되는 시간이 같은 경우도, 동일한 cnt[]에 누적해야 한다는 로직은 이해했지만 코드로 옮기기 어려워서 질문드립니다 ㅠ*링크 내의 아래와 같이 적힌 부분이 질문입니다.if(next < 0 || next >= MAX || visited[next]) continue;visited[next] = visited[here] + 1;cnt[next] += cnt[here];...if(visited[next] == visited[here]+1) cnt[next] += cnt[here];
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
해시맵을 사용해서 풀어보았습니다 혹시 예외나 틀린 부분이 있을까요
# 스도쿠 제대로 풀었는지 검사하는 알고리즘 import sys sys.stdin = open("./탐색&시뮬레이션/스도쿠.txt", 'r') n = 9 def solution(sudoku): for i in range(len(sudoku)): rawTable = {} colTable = {} for j in range(n): if sudoku[i][j] in rawTable or sudoku[j][i] in colTable: return False else: rawTable[sudoku[i][j]] = sudoku[i][j] colTable[sudoku[j][i]] = sudoku[j][i] # 이제 3*3 검사도 하자 for i in range(3): for j in range(3): matrixTable = {} for k in range(3): for s in range(3): if sudoku[i*3+k][i*3+s] in matrixTable: return False else: matrixTable[sudoku[i*3+k][i*3+s]] = sudoku[i*3+k][i*3+s] return True sudoku = [list(map(int, input().split())) for _ in range(n)] if solution(sudoku): print('Yes') else: print('No')
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
실전 크롤링 기술팁2 >추출한 데이터 내 추출하기 질문 드립니다
선생님 안녕하세요, 강의 매번 잘 듣고 있습니다. 크롤링 복습 중 질문이 있어 아래와 같이 문의 드립니다 :)강의명: 실전크롤링과 강력한 크롤링 기술 팁2 강의 내 시간: 4:35질문: 하단의 초록색 부분만 추출할 때 저는 아래 첫번째샷으로 짜서 >>print(mydata.get_text() 결과값이 선생님이 하신 것과 동일한 결과가 나왔는데요, 선생님께서는 두번째 샷으로 설명해주셨는데, 다시 titles=mydata.find_all('li','course')를 받아서 출력을 해야 하는 건지 궁금합니다. 이미 id='dev_course_list로 상위 id에서 확정을 하고 들어가서 'li','course' 부분을 작성하지 않아도 된다고 생각했습니다.import requests from bs4 import BeautifulSoup res=requests.get('https://davelee-fun.github.io/blog/crawl_test') soup=BeautifulSoup(res.content,'html.parser') mydata=soup.find('ul',id='dev_course_list') print(mydata.get_text())import requests from bs4 import BeautifulSoup res=requests.get('https://davelee-fun.github.io/blog/crawl_test') soup=BeautifulSoup(res.content,'html.parser') mydata=soup.find('ul',id='dev_course_list') titles=mydata.find_all('li','course') for title in titles: print(title.get_text())
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
chap_13 Quiz 코드 질문드립니다.
선생님 코드와 내용적으로는 다른 부분이 없는 것같은데 작동이 안합니다.선생님 코드를 복붙하여 폴더 위치만 수정하면 제대로 작동합니다. 어떤 부분을 잘못 작성하여서 작동 안하는 걸까요??import java.io.*; import java.util.Scanner; public class _Quiz_13 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); try (BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\user\\Desktop\\Javaworkspace\\saying.txt"))) { String quiz; String answer; String input; while (true) { quiz = br.readLine(); answer = br.readLine(); if(quiz == null || answer == null) break; } System.out.println("(문제)" + quiz); System.out.print("정답 입력 =>"); input = sc.next(); if(input.equals(answer)) { System.out.println("정답입니다!"); } else { System.out.println("틀렸습니다. 정답은" + answer + "입니다."); } } catch (Exception e) { e.printStackTrace(); } } }
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
로그인 인증 과정 문의
안녕하세요, 강의를 듣고 로그인 하는 과정에서의 궁금증이 생겨 질문 남깁니다.로그인할 때 유저의 id,비밀번호를 body에 넘기고 있는 사이트를 우연히 발견하게 되면서 보안에 굉장히 취약할 거란 생각을 하게 되었고 몇몇 유명 사이트들을 확인해보니 대부분 네트워크탭 payload에 담기지 않는 것을 확인했습니다.조금 더 찾아보니 세션id를 활용하는 경우 서버에 로그인 요청할 때 authorization 헤더에 base64로 인코딩해서 전송하는 basic authentication 방식이 있는 것을 확인했습니다. 궁금한 것이 제가 찾아본 내용이 실무에서도 사용되고 있는 방식인지 그렇지 않다면 유저정보를 어떤 방식으로 body에 담지않고 서버에 전송할지 있는지 궁금합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
jar포맷의 프로젝트에서, 브라우저 접근 제한하는 방법 문의
스프링 MVC1편 >> [3.서블릿,JSP,MVC패턴] 강의에서/WEB-INF/ 경로에 있는 JSP 는 외부에서 직접 호출할 수 없다고 하였는데 JAR 패키징 유형의 프로젝트에서도 HTML 파일이나 JSP 파일을 만들 때, 브라우저에서 직접 접근하지 못하도록 하는 방법이 있나요 ??