inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

174만명의 커뮤니티!! 함께 토론해봐요.

4. ArgoCD설치---Base64 디코딩 부분만 PowerShell 방식으로 바꾸어서 설치 필요

미해결

Beginning Kubernates-Based MSA (with Spring Boot) - Part 1

안녕하세요. 자문자답해봅니다. PowerShell 7.6.6 PS C:\Users\MZC-USER> kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo base64: 'base64' 용어는 cmdlet, 함수, 스크립트 파일 또는 실행 프로그램의 이름으로 인식되지 않습니다. 이름의 철자를 확인하거나 경로가 포함되어 있으면 경로가 올바른지 확인하고 다시 시도합니다. 명령 파이프라인 위치 1에서 cmdlet Write-Output 다음 매개 변수에 대한 값을 제공하세요. InputObject: PS C:\Users\USER> $pwd = kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" PS C:\Users\USER> [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($pwd)) ................ PS C:\Users\USER>

  • kubernetes
  • ci/cd
  • jwt
  • kafka
  • msa
  • argocd
사랑2 댓글 1 좋아요 0 조회수 28

개인 git에 코드를 올려도 될지 문의드립니다.

미해결

Beginning Kubernates-Based MSA (with Spring Boot) - Part 1

안녕하세요, 자바 웹 개발 워크북으로 백엔드 개발에 입문한 개발자입니다. 제가 딱 듣고 싶었던 주제의 강의 제작해주셔서 들어보려고 하는데요,,, 혹시 다름이 아니라, 혹시 강의를 수강하면서 코드를 개인 깃에 올려도 될지 문의드리고 싶습니다. 감사합니다.

  • kubernetes
  • ci/cd
  • jwt
  • kafka
  • msa
  • argocd
차니 댓글 2 좋아요 0 조회수 52

mission12-01 guide.md파일 누락

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

guide.md 파일이 누락되었습니다 확인부탁드립니다.

  • javascript
  • react
  • typescript
  • next.js
  • jwt
5647kr 댓글 2 좋아요 0 조회수 57

ThemeProvider를 이용해서 NextThemeProvider를 따로 생성하여 Layout.tsx에 적용하는 이유는 뭘까요?

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

next-themes 문서를 읽어보고 다른 분들 사용방법을 읽어봤는데, 따로 NextThemeProvier를 생성하지 않고 next-themes의 ThemeProvider를 layout.tsx에 바로 적용하는데 강의에서는 따로 provider를 생성해서 적용하고 있습니다. 혹시 유지보수를 좀 더 원활하게 하기 위함일까요?

  • javascript
  • react
  • typescript
  • next.js
  • jwt
Bigbattery 댓글 1 좋아요 0 조회수 137

mission 09-01 을 수행할 수 없어요

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

post를 렌더링 하려고 코드 작성을 다 했는데 에러가 뜨길래 잘못된 코드는 없나 다 확인을 해도 별 다른 이상한점이 없어서 직접 localhost:4000/posts로 접근해보니 아예 데이터가 안넘어오고 있어요 확인해주시면 감사하겠습니다.

  • javascript
  • react
  • typescript
  • next.js
  • jwt
5647kr 댓글 1 좋아요 0 조회수 51

스니펫이 이상해요

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

제공해주신 스니펫을 적용해 nlayout 을 쳤는데 맥북 최상위루트부터 아예 싹다 파일경로가 입력되고있어요 export default function ~/Documents/.../section04/04-04/src/app/(auth)({ children }: Readonly<{ children: React.ReactNode }>) { return <>{children}</>; }

  • javascript
  • react
  • typescript
  • next.js
  • jwt
댓글 2 좋아요 0 조회수 59

모든 컴포넌트를 클라이언트 컴포넌트로 했을 때

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

안녕하세요, 저는 회사에서 next.js로 포팅하여 개인적으로 좀 공부하고 있는 학생입니다. 현재 2강 할 일 관리 앱을 보면서 저희 회사의 작업 방식을 함께 생각해봤는데 저희 회사는 꼭 필요한 부분 (iron-session을 이용하여 세션을 가져온다거나)을 제외하고는 죄다 클라이언트 컴포넌트로 바꿔서 사용하고 있습니다. 그래서 이 작업을 진행하면서도 클라이언트 컴포넌트로 모두 바꾸어 진행한다면 어떨까라고 생각이 들었었는데 과제에서는 최소한의 컴포넌트만 클라이언트 컴포넌트로 바꾸라고 하신 이유가 궁금합니다. 감사합니다!

  • javascript
  • react
  • typescript
  • next.js
  • jwt
댓글 3 좋아요 0 조회수 71

쿠키 생성 관련

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

카카오 로그인 후 이메일을 입력하고 몽고DB에 이메일과 refresh token이 저장된 것 까지 확인은 했는데 쿠키가 생성되지 않고 있네요. 강사님 네이버메일로 소스코드링크를 보냈습니다.

  • javascript
  • react
  • typescript
  • next.js
  • jwt
태리바이트 댓글 3 좋아요 0 조회수 89

JWT auth error invalid token

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

이메일 입력 후 contitnue 버튼을 누르면 JWT auth error invalid token 오류가 나네요. 몇시간째 보고 있는데 원인을 찾지 못하겠네요. 전체 소스 코드를 같이 첨부하고 싶은데 할 수 가 없네요. 일단은 EmailInfoForm 소스만 올려 봅니다. backend는 .env 빼고 소스를 특별하게 수정한 부분이 없습니다. 브라우저 application 데이터도 클리어 해보고 했지만 소용이 없네요. 확인 부탁드립니다. "use client"; import {useState} from "react"; import {MailIcon} from "../ui/Icons"; import {validateEmail} from "@/lib/validation"; import clientApi from "@/lib/api/clientApi"; import {useRouter, useSearchParams} from "next/navigation"; export default function EmailInfoForm() { const router = useRouter(); const searchParams = useSearchParams(); const accessToken = searchParams.get("access_token") ?? ""; const [email, setEmail] = useState(""); const [error, setError] = useState(""); const [isSubmitting, setIsSubmitting] = useState(false); const handleFormSubmit = async (e: React.SubmitEvent<HTMLFormElement>) => { e.preventDefault(); if (isSubmitting) return; setError(""); //이메일 검증 const validationError = validateEmail(email); if (validationError) { setError(validationError); return; } //확인 대화 상자 const confirmed = window.confirm( "한 번 입력한 이메일은 변경할 수 없습니다. 이 이메일로 저장할까요?", ); if (!confirmed) return; setIsSubmitting(true); try { const res = await clientApi("/auth/update-email", { method: "PATCH", body: JSON.stringify({email: email.trim()}), headers: { Authorization: `Bearer ${accessToken}`, }, }); if (!res.ok) { const errorData = await res.json().catch(() => null); throw new Error( (errorData && errorData.error) || "이메일 업데이트에 실패하였습니다.", ); } router.replace("/"); router.refresh(); } catch (e) { setError( e instanceof Error ? e.message : "이메일 업데이트에 실패하였습니다.", ); } }; return ( <> <form className="flex flex-col gap-5" onSubmit={handleFormSubmit}> <div className="flex flex-col gap-2"> <label htmlFor="email" className="text-sm font-medium text-foreground" > Email Address </label> <div className="relative"> <MailIcon className="absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" /> <input id="email" type="email" placeholder="Enter your email" className="h-11 w-full rounded-lg border-none bg-secondary pl-10 pr-4 text-sm text-foreground placeholder-muted-foreground outline-none focus:ring-2 focus:ring-primary" value={email} onChange={(e) => setEmail(e.target.value)} /> </div> </div> {error && ( <p className="text-sm font-medium text-destructive">{error}</p> )} <div className="grid grid-cols-2 gap-3"> <button type="button" className="h-11 rounded-lg bg-secondary text-sm font-medium text-secondary-foreground transition-colors hover:opacity-90" > Cancel </button> <button type="submit" className="h-11 rounded-lg bg-primary text-sm font-medium text-primary-foreground transition-colors hover:opacity-90" > Continue </button> </div> </form> </> ); }

  • javascript
  • react
  • typescript
  • next.js
  • jwt
태리바이트 댓글 2 좋아요 0 조회수 83

74. 데이터 캐시 - 1 (이론) 강의 영상 누락

해결됨

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

73. Next.JS의 캐싱 전략 4가지 74. 데이터 캐시 - 1 (이론) 74. 데이터 캐시 - 1 (이론) 강의가 누락된거같아요 73. Next.JS의 캐싱 전략 4가지와 같은 강의가 재생됩니다.

  • javascript
  • react
  • typescript
  • next.js
  • jwt
tjsdn052 댓글 1 좋아요 0 조회수 90

인가 코드 발급(프론트 vs 백)

미해결

카카오,구글 SNS 로그인(springboot3, vue3)

카카오 데브톡 응답에 따르면 프론트/백엔드 분할 책임 방식이 지양한다고 합니다. 오히려 백에서 로그인 구현을 일임하는 것을 권장합니다. https://devtalk.kakao.com/t/oauth/136448 해당 블로그에서도 책임을 프론트와 백엔드가 나누어 가지는 방식 이 잘못되었다고 합니다. https://cafe.naver.com/xxxjjhhh/296 카카오 로그인 REST API에서도 백에서 인가 코드를 받습니다. https://developers.kakao.com/docs/ko/kakaologin/rest-api#before-you-begin-process 어떤 방식이 맞는지 헷갈립니다.

  • vue.js
  • spring-boot
  • oauth
  • jwt
  • oauth2
매콤한각설탕 댓글 2 좋아요 0 조회수 103

lucide react 아이콘 설치

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

저는 npm i lucide-react로 아이콘을 사용하고 있는데 미션에 제공하는거랑 버전도 다르고 아이콘도 다른데 제가 따로 다른 명령어로 설치하고 있는걸까요?

  • javascript
  • react
  • typescript
  • next.js
  • jwt
5647kr 댓글 2 좋아요 0 조회수 116

02-04 layout.tsx 구조가 달라요

해결됨

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

맨 위가 강의에 나오는 기본 구조 밑에 코드가 제 코드 구조입니다. 버전이 달라서 그런가요?

  • javascript
  • react
  • typescript
  • next.js
  • jwt
곰코드 댓글 2 좋아요 0 조회수 127

10-6 실습 할 수 없습니다..

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

폴더가 어떻게 밀렸는지 10-6에는 그 전 강의 내용이 있어서 라우트 핸들러에서 캐싱처리 하는 내용의 백엔드 코드와 프론트 코드가 없어서 실습이 불가능합니다 .. 🥲 확인 부탁드립니다 .. !

  • javascript
  • react
  • typescript
  • next.js
  • jwt
button_ 댓글 1 좋아요 0 조회수 138

그림 예제는 따로 제공이 안되나요?

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

강의에서 이해하기 쉽게 그림으로 설명해주시는데 예제코드에 따로 그림이 첨부되어있진 않던데 혹시 그림은 따로 제공이 안될까요? 그리고 중간 중간 편집이 어색하게 되어서 중복 대사가 있다보니 오히려 더 헷갈리게 되더라고요 강의 03-03 "클라이언트 컴포넌트에서 서버 컴포넌트 렌더링 하기 -1"에서 6분 18초 가량부터 시작해서 대사가 "페이지 컴포넌트에서 데이터 패치 컴포넌트로 props를 전달하는 건 가능하지만 그리고 페이지 컴포넌트에서 데이터 패치 컴포넌트로 props로 데이터를 전달하는 건 가능하지만 클라이언트 래퍼 컴포넌트에서 데이터 패치 컴포넌트로 props로 데이터를 전달하는 건 불가능한 그런 구조가 되게 되는 겁니다" 이러다보니 오히려 헷갈리게 되더라고요 이런 부분은 확실히 편집되면 좋겠습니다. 이미지도 오히려 설명이 달라서 "페이지 컴포넌트에서 클라이언트 래퍼 컴포넌트로 dataFetch를 props로 전달이 가능하고, 페이지 컴포넌트에서 데이터 패치 컴포넌트로도 props 전달이 가능하지만 클라이언트 래퍼 컴포넌트에서 데이터 패치 컴포넌트로 props를 전달하는건 불가능한 구조가 되게 되는겁니다"와 같이 수정이 좀 필요해보입니다.

  • javascript
  • react
  • typescript
  • next.js
  • jwt
5647kr 댓글 1 좋아요 0 조회수 112

cacheLife에 대한 질문입니다

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

강의와 다르게 지금은 default 프리셋이 바뀌어서 질문드립니다 default의 경우 expire값이 never던데 그러면 캐시가 만료되지 않고 revalidate값에 따라 주기적으로 갱신된다고 이해하면 될까요?

  • javascript
  • react
  • typescript
  • next.js
  • jwt
홍재훈 댓글 1 좋아요 0 조회수 106

(제보) 쿠키를 브라우저 개발 환경에서 직접 삽입했을 때 나오지 않는 현상

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

말씀해주신 대로 브라우저의 쿠키 탭에서 데이터를 입력하니, 서버를 재실행했을 때 쿠키가 날라가서 올바르게 테스트를 할 수 없었습니다. Claude 로 확인해보니 headers.set('Set-Cookie', ...) 코드 작성 후 테스트 환경에서 직접 URI 를 입력하여 실행하여 쿠키를 심어보라고 해서 그렇게 했더니 쿠키가 잘 심어집니다! /* src/app/api/test-cookie/route.ts */ // localhost:3000/app/api/test-cookie 로 들어가 직접 쿠키를 입력해야 정상 작동 export async function GET() { const response = new Response('ok'); response.headers.set('Set-Cookie', 'name=kim; HttpOnly; Path=/; Max-Age=3600'); return response; }

  • javascript
  • react
  • typescript
  • next.js
  • jwt
챙준 댓글 2 좋아요 0 조회수 121

디스코드 채널 초대 링크

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

초대 링크가 유효하지 않아서 확인 한번 다시 부탁드립니다~

  • javascript
  • react
  • typescript
  • next.js
  • jwt
챙준 댓글 1 좋아요 0 조회수 160

revalidatePath 질문 있습니다.

미해결

타입스크립트로 배우는 Next.js 16+ 완전 정복 : 기초부터 최신 아키텍처까지

revalidatePath("/about", "page") 로 설정을 하고 테스트를 하다 보면 /about 페이지에서 재검증 버튼을 누르면 AboutLayout의 데이터 패칭 결과와 AboutPage의 데이터 패칭 결과가 함께 바뀌는 것과, /about/detail 페이지에서 재검증 버튼을 누르면 아무런 변화도 없는 이유가 revalidatePath의 첫 번째 인자로 설정된 "/about" 이 아닌 /about/detail 페이지에 접속해 있기 때문이라는 것까지는 이해했습니다. 하지만 detail 페이지에서 재검증을 누르고 about 페이지로 이동하면 즉시 AboutPage의 결과는 변하는데 AboutLayout의 결과는 변하지 않는데 이유가 뭔가요?

  • javascript
  • react
  • typescript
  • next.js
  • jwt
hwnii 댓글 2 좋아요 0 조회수 123

인기 태그

인프런 TOP Writers

주간 인기글