묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨LangGraph를 활용한 AI Agent 개발 (feat. MCP)
연봉 5천만원 직장인의 세금이 624만원이 나오는게 맞나요?
저는 강의를 똑같이 따라해봤는데 쿼리를 연봉 5천만원 직장인의 소득세는? 이라고 했을 때, 강의에서처럼 해당 세율표 수식만 보고 624만원으로 단순계산하는 것이 아니라, 근로소득공제와 과세표준 등등을 계산해서 624만원과 다른 값을 냅니다.거주자의 소득세로 바꿔도 마찬가지입니다.(이전 강의에서 직장인이 근로소득과 관련이 있어서 잘못된 문서를 가져온다고 하신 내용도 압니다)하지만 제가 gpt한테 물어보니 다음과 같이 애초에 세율표만을 보고 계산하는 것이 틀렸고, 근로소득을 계산하는 것이 맞다고 말합니다.===============✅ 왜 세율표만 보고 계산하면 안 되는가?이 세율표는 “과세표준”에 적용하는 것이고,당신이 말한 “연봉 5천만 원”은 ‘총급여액’이기 때문입니다.즉, 소득세율을 적용하려면 반드시 다음 절차를 따라야 해요:📌 세금 계산 절차 요약 (2025년 근로소득자 기준):총급여액: 연봉 5,000만 원근로소득공제 적용 → 근로소득금액 산출인적공제·연금보험료공제 등 → 과세표준 산출과세표준에 소득세율표 적용산출세액에서 세액공제 (근로소득세액공제 등) 적용 → 결정세액===================결론적으로 제가 소득세에 대해 잘 몰라서 gpt가 말한게 할루시네이션일 수 있지만,만약 gpt처럼 실제로 근로소득금액을 산출해서 소득세를 계산하는게 맞을 경우, 강의에 있는 llm이 모두 틀린 답변을 내놓은 것 아닌가요?만약 강의처럼 연봉 5천만원의 직장인 혹은 거주자의 소득세가 표만 보고 단순 계산하여 624만원인 것이 맞을 경우, 제가 어떤 과정을 더 해야할 지 모르겠습니다.. 계속해서 근로소득공제를 계산합니다. 거주자로 쿼리를 바꿔도요.
-
해결됨자격취득과 실무! 한 방에 경영정보시각화(실기) 태블로
수업자료에 대한 내용은 대체 어딨나요?
수업자료 대체 어딨는거에여? 갑자기 Sample-SuperStore 하다가 Hospitality 데이터가 뜨네여
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
완성 전에 배포
완성전에 확인차 배포를 했는데 완성 후 그냥 vercel만 입력하면 빌드까지 되는건가요?
-
해결됨스프링 핵심 원리 - 고급편
reflection과 extracted 의 차이
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]제목과 동일한데 방식이 비슷해서 여쭤봅니다extracted(ctrl + alt + M) 는 단순히 같은 로직을 메서드로 추출해서 정적인 메서드를 제공하는 거고 reflection은 동적으로 사용할 수 있는 것 외에도추가적인 다른 기능도 있나요?예외처리, 추상화 말고 또 다른 기능이 있을까요? 실무에서는 주로 두 방식 중에 어떤 방식을 자주 사용하는지 궁금합니다
-
해결됨Claude + IntelliJ로 TodoList 개발하기 - MCP 완전 정복
mcp를 github에서 download 받아서 intelij에서 사용 하는 순서을 알 려 주세요려 주
- 학습 관련 질문을 남겨주세요. 구체적으로 적을수록 좋아요!- 마크다운과 단축키를 활용하면 글을 더 편하게 작성할 수 있어요.- 커뮤니티 질문 & 답변에 비슷한 내용이 있었는지 먼저 검색해보세요.- 서로 예의를 지키며 존중하는 분위기를 함께 만들어가요.- 잠깐! 인프런 서비스 관련 문의는 1:1 문의하기를 이용해 주세요
-
해결됨CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
세마포어 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요. 강의 잘 보고 있습니다. 경쟁 상태 즉 공유 자원의 정합성과 무결성을 위해 세마포어로 해결한다고 이해했습니다.그런데 세마포어가 여러개의 프로세스가 공유 자원에 접근한다는게 이해가 되지 않습니다. 공유 자원에 여러개의 프로세스가 동시에 접근하는 것을 막기 위해 만든 방법이 여러 프로세스가 공유 자원에 접근한다?? 이런 느낌으로 받아드려지고 있어서 어디서 잘못됐는지 잘 모르겠네요 ㅠㅠ 감사합니다.
-
해결됨비전공자도 이해할 수 있는 MySQL 성능 최적화 입문/실전 (SQL 튜닝편)
여러 테이블 조인시 where 절이 필요한가? 에 대해 질문있습니다.
강사님 안녕하세요! 프로젝트를 끝내고 리팩토링을 하고이 있는데요.inner join 으로 3~4 개 정도의 테이블을 조인할 때, where 절이 과연 필요한가? 라는 궁금증이 생겼습니다. 기존에는 무지성 inner join 으로 테이블을 다 합친 후, where 절에서 필터링을 하고있었습니다. 근데 생각을 해보니 조인하려는 첫 테이블에 on 절로 추가 조건들을 넣어준다면.. 후에 조인하는 테이블들의 row 수를 줄일 수 있어 훨씬 효율적인것 같은데 (물론 인덱스도 타고).. 강사님은 어떻게 생각하시는지 궁금합니다. 단순히 하나의 테이블에 대한 row 만 가져올때는 where 절을 사용하고, 나머지 경우에는 where 절을 사용하지 않는게 훨 효율적이지 않나? 라는 생각이 들어서 이렇게 질문드립니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
카프카 도커 오류
강의대로 docker-compose-single-brokey.yml 파일 작성하고 파일 안에 맨 밑에networks: my-network: external: true name: ecommerce-network 이렇게도 작성하고 아래 명령어 그대로 docker-compose -f docker-compose-single-broker.yml up -d 입력했는데 Error response from daemon: user specified IP address is supported only when connecting to networks with user configured subnets 이런 오류 가 발생합니다..
-
미해결더 자바, 애플리케이션을 테스트하는 다양한 방법
테스트 반복하기 관련 질문입니다
@DisplayName("파라미터 테스트") @ParameterizedTest(name = "{index} {displayName} message={0}") @ValueSource(ints = {10, 20, 40}) void parameterizedTest(Study study){ System.out.println(study.getLimit()); }Junit5 테스트 반복하기 2부에서 이 부분 질문드리려 합니다. 강의에서는 Study 타입으로 받아서 객체를 생성하고 getLimit으로 값 가져오는 것까지 묵시적으로 진행이 잘 되었습니다만, 제 환경에서는 ```javaError converting parameter at index 0: No built-in converter for source type java.lang.Integer and target type com.example.testpractice.Studyorg.junit.jupiter.api.extension.ParameterResolutionException: Error converting parameter at index 0: No built-in converter for source type java.lang.Integer and target type com.example.testpractice.Study at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)``` 와 같은 에러가 발생해서 Junit이나 JDK의 버전에 따라 스펙이 바뀌었는지 궁금해져서 질문드립니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
맵 탐색에서 for문 내부의 조건문에 대해 질문 있습니다!
안녕하세요 큰돌님 열심히 수강중입니다 ㅎㅎvoid go 함수 내부에 for문에서if(a[ny][nx] && visited[ny][nx] == 0) go(ny,nx);이렇게 쓰는것과 강의 영상에 나오는 if(a[ny][nx] == 0)continue;if(visited[ny][nx]) continue;차이점이 있을까요?
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
Replication 설정 후에도 node가 1개만 조회됩니다.
안녕하세요. 강사님, "Elasticsearch Replication(복제)에 대해 알아보자" 강의에서 동일하게 'docker-compose-mult.yml' 파일을 작성하고 compose 실행까지는 성공했는데노드의 숫자가 1개이고 shard도 P인 것들만 나옵니다. 이유가 뭘까요? ㅠcompose파일내용 공유드립니다. version: "3.8" volumes: certs: driver: local esdata01: driver: local esdata02: driver: local esdata03: driver: local kibanadata: driver: local # metricbeatdata01: # driver: local # filebeatdata01: # driver: local # logstashdata01: # driver: local networks: default: name: elastic external: false services: setup: image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION} volumes: - certs:/usr/share/elasticsearch/config/certs user: "0" command: > bash -c ' if [ x${ELASTIC_PASSWORD} == x ]; then echo "Set the ELASTIC_PASSWORD environment variable in the .env file"; exit 1; elif [ x${KIBANA_PASSWORD} == x ]; then echo "Set the KIBANA_PASSWORD environment variable in the .env file"; exit 1; fi; if [ ! -f config/certs/ca.zip ]; then echo "Creating CA"; bin/elasticsearch-certutil ca --silent --pem -out config/certs/ca.zip; unzip config/certs/ca.zip -d config/certs; fi; if [ ! -f config/certs/certs.zip ]; then echo "Creating certs"; echo -ne \ "instances:\n"\ " - name: es01\n"\ " dns:\n"\ " - es01\n"\ " - localhost\n"\ " ip:\n"\ " - 127.0.0.1\n"\ " - name: kibana\n"\ " dns:\n"\ " - kibana\n"\ " - localhost\n"\ " ip:\n"\ " - 127.0.0.1\n"\ > config/certs/instances.yml; bin/elasticsearch-certutil cert --silent --pem -out config/certs/certs.zip --in config/certs/instances.yml --ca-cert config/certs/ca/ca.crt --ca-key config/certs/ca/ca.key; unzip config/certs/certs.zip -d config/certs; fi; echo "Setting file permissions" chown -R root:root config/certs; find . -type d -exec chmod 750 \{\} \;; find . -type f -exec chmod 640 \{\} \;; echo "Waiting for Elasticsearch availability"; until curl -s --cacert config/certs/ca/ca.crt https://es01:9200 | grep -q "missing authentication credentials"; do sleep 30; done; echo "Setting kibana_system password"; until curl -s -X POST --cacert config/certs/ca/ca.crt -u "elastic:${ELASTIC_PASSWORD}" -H "Content-Type: application/json" https://es01:9200/_security/user/kibana_system/_password -d "{\"password\":\"${KIBANA_PASSWORD}\"}" | grep -q "^{}"; do sleep 10; done; echo "All done!"; ' healthcheck: test: ["CMD-SHELL", "[ -f config/certs/es01/es01.crt ]"] interval: 1s timeout: 5s retries: 120 es01: depends_on: setup: condition: service_healthy image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION} labels: co.elastic.logs/module: elasticsearch volumes: - certs:/usr/share/elasticsearch/config/certs - esdata01:/usr/share/elasticsearch/data ports: - ${ES_PORT}:9200 environment: - node.name=es01 - cluster.name=${CLUSTER_NAME} # - discovery.type=single-node - discovery.seed_hosts=es02,es03 - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es01/es01.key - xpack.security.http.ssl.certificate=certs/es01/es01.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es01/es01.key - xpack.security.transport.ssl.certificate=certs/es01/es01.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${ES_MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 es02: depends_on: setup: condition: service_healthy image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION} labels: co.elastic.logs/module: elasticsearch volumes: - certs:/usr/share/elasticsearch/config/certs - esdata02:/usr/share/elasticsearch/data # ports: # - ${ES_PORT}:9200 environment: - node.name=es02 - cluster.name=${CLUSTER_NAME} # - discovery.type=single-node - discovery.seed_hosts=es01,es03 - cluster.initial_master_nodes=es01,es02,es03 - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es01/es01.key - xpack.security.http.ssl.certificate=certs/es01/es01.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es01/es01.key - xpack.security.transport.ssl.certificate=certs/es01/es01.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${ES_MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 es03: depends_on: setup: condition: service_healthy image: docker.elastic.co/elasticsearch/elasticsearch:${STACK_VERSION} labels: co.elastic.logs/module: elasticsearch volumes: - certs:/usr/share/elasticsearch/config/certs - esdata03:/usr/share/elasticsearch/data # ports: # - ${ES_PORT}:9200 environment: - node.name=es03 - cluster.name=${CLUSTER_NAME} # - discovery.type=single-node - discovery.seed_hosts=es01,es02 - cluster.initial_master_nodes=es01,es02,es03 - ELASTIC_PASSWORD=${ELASTIC_PASSWORD} - bootstrap.memory_lock=true - xpack.security.enabled=true - xpack.security.http.ssl.enabled=true - xpack.security.http.ssl.key=certs/es01/es01.key - xpack.security.http.ssl.certificate=certs/es01/es01.crt - xpack.security.http.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.enabled=true - xpack.security.transport.ssl.key=certs/es01/es01.key - xpack.security.transport.ssl.certificate=certs/es01/es01.crt - xpack.security.transport.ssl.certificate_authorities=certs/ca/ca.crt - xpack.security.transport.ssl.verification_mode=certificate - xpack.license.self_generated.type=${LICENSE} mem_limit: ${ES_MEM_LIMIT} ulimits: memlock: soft: -1 hard: -1 healthcheck: test: [ "CMD-SHELL", "curl -s --cacert config/certs/ca/ca.crt https://localhost:9200 | grep -q 'missing authentication credentials'", ] interval: 10s timeout: 10s retries: 120 kibana: depends_on: es01: condition: service_healthy image: docker.elastic.co/kibana/kibana:${STACK_VERSION} labels: co.elastic.logs/module: kibana volumes: - certs:/usr/share/kibana/config/certs - kibanadata:/usr/share/kibana/data ports: - ${KIBANA_PORT}:5601 environment: - SERVERNAME=kibana - ELASTICSEARCH_HOSTS=https://es01:9200 - ELASTICSEARCH_USERNAME=kibana_system - ELASTICSEARCH_PASSWORD=${KIBANA_PASSWORD} - ELASTICSEARCH_SSL_CERTIFICATEAUTHORITIES=config/certs/ca/ca.crt - XPACK_SECURITY_ENCRYPTIONKEY=${ENCRYPTION_KEY} - XPACK_ENCRYPTEDSAVEDOBJECTS_ENCRYPTIONKEY=${ENCRYPTION_KEY} - XPACK_REPORTING_ENCRYPTIONKEY=${ENCRYPTION_KEY} mem_limit: ${KB_MEM_LIMIT} healthcheck: test: [ "CMD-SHELL", "curl -s -I http://localhost:5601 | grep -q 'HTTP/1.1 302 Found'", ] interval: 10s timeout: 10s retries: 120
-
미해결실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
GTM/GA4 태그가 중복됩니다.
알려주신대로 기본 태그 추가 뒤, 버튼에 대한 클릭 태그를 만드려고 하니 컨테이너에 태그가 없다고 뜹니다.ㄴ 해당 태그를 추가하니 정상적으로 작동은 되나, all page init 이벤트에 태그가 두 개 작동되어 디버그 시 하단처럼 보이네요. 원인이 뭘까요? 별개로, 강의 잘 수강하고 있습니다. 여타 봤던 모든 강의 중에 제일 이해가 잘 되네요.궁금한 것들 먼저 보느라 순서가 뒤죽박죽이지만 전체 완강할 수 있도록 하겠습니다. ^^
-
미해결스프링 DB 2편 - 데이터 접근 활용 기술
[해결 방법] 스프링 부트 2.x -> 3.x 업그레이드
섹션5의 MyBatis 적용2 - 설정과 실행에서 원하는 결과가 나오질 않아서 봤더니, MyBatis는 스프링 부트 3.x에 지원하는 버전으로 설정되어있고 현재 프로젝트 설정은 스프링 부트 2.x 이다보니 버전 충돌로 되지 않아서 과감하게 프로젝트를 3.x 대로 변경하는 삽질을 해봤습니다. #1. 먼저 3.x 에서 만든 프로젝트가 필요합니다.#2. 1에서 만든 프로젝트에서 gradle/wrapper에 있는 아래의 두개 파일을 복사해 옵니다.gradle-wapper.jar gradle-wrapper.properties#3. build.gradle 수정plugins { id 'java' id 'org.springframework.boot' version '3.4.5' #버전에 맞게 수정 id 'io.spring.dependency-management' version '1.1.7' } group = 'com.example' version = '0.0.1-SNAPSHOT' java { toolchain { languageVersion = JavaLanguageVersion.of(17) } }#4. Project Structure 확인#인텔리제이에서 File -> Project Stucture 에서 Project Settings > Project : SDK 가 17 이상인지 확인#5. Gradle 동기화인텔리제이에서 했는데 잘 안되면 CLI 환경에서 아래처럼 시도#in mac chmod +x gradlew ./gradlew clean ./gradlew build#6. 5를 시도했는데도 안되면,#인텔리제이에서 File -> Invalidate Caches... 를 하고 재시도
-
미해결하울의 안드로이드 인스타그램 클론 만들기
firebase storage에서 putfile해도 이미지 업로드가 안되요..
var storageRef = storage?.reference?.child("images")?.child(imageFileName) // FileUpload storageRef?.putFile(photoUri!!)?.addOnSuccessListener { Toast.makeText(this, getString(R.string.upload_success), Toast.LENGTH_LONG).show() }이런식으로 강의랑 똑같이해도 에러는 안나지만Toast메시지가 안뜹니다. 제 버전과 storage 규칙은 아래와 같습니다.// 버전 firebaseAuth = "23.2.0" firebaseStorageKtx = "21.0.1" // 규칙 allow read, write: if false;
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
UI 불러오지 못함
제가 보기 편하게 하려고 Resources 폴더를 Resources 라고 이름을 바꿨습니다그리고 이름 때문에 안되는건가 하고 이름을 다시 수정하려니까 엑세스가 거부 됐다고 그것도 안됩니다 ㅜㅜ 이름 변경으로 인해 실행이 안되는건가요? 16분 부분입니다
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
질문삭제
질문삭제
-
미해결김영한의 실전 자바 - 중급 2편
자료구조&알고리즘 강의
코딩인터뷰용 자료구조&알고리즘 강의 만들어주시면 안되나요. 김영한님 한테 전달좀 해주세요ㅜㅜ
-
해결됨챗GPT와 파이썬으로 주식 자동매매 앱 및 웹 투자 리포트 만들기
파이썬 32비트 가상환경
파이썬 32비트 가상환경으로 설치한다는게 정확히 어떤 의미인가요? 이미 아나콘다가 설치되어 있는 경우는 파이썬을 다운그레이드 하는걸까요?
-
해결됨비전공자도 이해할 수 있는 AWS 중급/실전 (보안, 가용성편)
프론트서버와 net인스턴스 서버는 nano 인스턴스로도 충분할까요??
제가 프론트서버 백서버 NAT인스턴스 역할을 하는 서버 이렇게 EC2를 3개 쓰려구합니다!!백서버는 프리티어인 t2.micro로 하고프론트서버는 t4g.nano로 하려고합니다1. 프론트서버라 메모리가 백서버만큼 먹진않을거같고2. t4g.nano가 nano중에 제일 싼데 성능은 제일 좋고3. arm64기반이긴한데 Next.js 서버가 충분히 호환된다고 들어서입니당Net인스턴스서버는 t3a.nano 쓰려고합니다1. Net게이트웨이 대용이라 nano면 충분할거같고2. Net Ami가 x86_64기반이라 arm64기반은 어려워 t4g.nano는 쓰지못하여 다음으로 저렴한 x86_64기반인 t3a.nano를 택했습니다근데 걱정이 일단 t2.micro의 성능은 확인해서 백서버가 돌아가는건 확인했는데 nano인스턴스들이 프론트서버와 net인스턴스의 제 역할을 해줄지 성능이 부족하진 않을지 걱정이네요 ㅠㅠ 혹시 이정도면 충분한 성능이 될까용??
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
강사님 코드로 진행할 경우 console.log( config); 도 안찍혔어요. instance 를 생성해서 공통으로 사용하셨는데 loginUser 에만 커스텀한 instance를 넣으니 콘솔에 컨피그 객체가 찍혀요
강사님 코드로 진행할 경우 console.log( config); 도 안찍혔어요. instance 를 생성해서 공통으로 사용하셨는데 loginUser 에만 커스텀한 instance를 넣으니 콘솔에 컨피그 객체가 찍혀요 function loginUser(userData) { const instance = createInstance(); return instance.post('login', userData); } export { loginUser }; console.log('Request Interceptor:', config); <- 해당 부분이 안찍히다 로그인 함수에만 커스텀 인스턴스를 사용하니 찍히네요영상이 대체로 ㅇ조금 그대로하면 안되는 경우들이 있는 것같습니다. 부분적인 업데이트는 필요한 것 같습니다 import store from '@/store/index'; // Vuex 스토어 가져오기 export function setInterCeptors(instance) { // Add a request interceptor 요청 인터셉터 instance.interceptors.request.use( function(config) { // 요청 전 실행되는 부분 // console.log('Request Interceptor:', config); config.headers.Authorization = store.state.token; // 토큰을 헤더에 추가 console.log('Request Interceptor:', config); return config; }, function(error) { return Promise.reject(error); }, ); // Add a response interceptor instance.interceptors.response.use( function(response) { // 응답 후 처리 return response; }, function(error) { return Promise.reject(error); }, ); return instance; }