안녕하세요. 먼저, Next.js 를 입문한지 얼마 되지 않아 질문이 서툴 수 있는 점 양해 부탁드립니다..! 현재 msw 세팅을 완료 했고, Auth.js는 공식문서를 참고하여 5버전과 동일하게 auth.ts 파일을 아래와 같이 작성하였습니다. // auth.ts import NextAuth from "next-auth"; import Credentials from "next-auth/providers/credentials"; export const { handlers, signIn, signOut, auth } = NextAuth({ pages: { signIn: "/i/flow/login", newUser: "/i/flow/signup", }, providers: [ Credentials({ authorize: async (credentials) => { const response = await fetch( `${process.env.NEXT_PUBLIC_BASE_URL}/api/login`, { method: "POST", body: JSON.stringify({ username: credentials.username, password: credentials.password, }), headers: { "Content-Type": "application/json" }, }, ); if (!response.ok) { return null; } const user = await response.json(); console.log("로그인 정보", user); return { id: user.id, name: user.nickname, image: user.image, ...user, }; }, }), ], }); // @modal/(.)/i/flow/login/page.tsx const onLogin = async () => { try { await signIn("credentials", { username: id, password, redirect: false, }); router.replace("/home"); } catch (err) { console.error(err); setMessage("아이디와 비밀번호가 일치하지 않습니다."); } }; 문제는 authorize 함수 내 콘솔이 찍히지 않는 것으로 보아, 해당 함수가 아예 실행되지 않는 것 같습니다. 회원가입하지 않은 아이디와 비밀번호를 입력해도 로그인이 되고 /home 으로 이동합니다. home으로 이동 후 session 응답 값은 null이고 쿠키에도 auth 토큰이 저장되지 않습니다. 그리고 터미널에는 첫번째 이미지 처럼 에러 메세지가 뜨고, 브라우저 콘솔에는 두번째 이미지와 같은 메세지가 뜹니다. // handlers.ts http.post(`${baseUrl}/api/login`, () => { console.log("로그인"); return HttpResponse.json(User[1], { headers: { "Set-Cookie": "connect.sid=msw-cookie; HttpOnly; Path=/", }, }); }), 현재는 MSW가 요청을 제대로 가로채지 못하고 있는 것 같다는 의심이 드는데, 어디를 우선적으로 점검해야 할지 잘 모르겠습니다.. 초보라 부족한 점이 많지만, 방향을 잡을 수 있도록 힌트나 조언 주시면 정말 감사하겠습니다 ㅠㅠ
저는 현직 웹 개발자로, 강화학습 및 머신러닝에 평소 큰 관심이 있어서 관련 강의를 꾸준히 듣고 있습니다. 최근 강의들은 분량이 짧아 접근성은 좋은데, 수학적 표현(수식, 기호)이 등장할 때마다 의도를 즉각적으로 해석하지 못하고 혼란을 겪습니다. 강의자 분께서는 '필요한 수학적 개념은 강의 중에 그때그때 이해하면 된다'고 안내하지만, 저에게는 수학적 진입장벽이 너무 높게 느껴지고, 결국 코드의 동작 방식만 어렴풋이 이해할 뿐 수학적 본질을 놓치게 되어 데이터 분석 분야 학습에 자꾸 실패감을 경험하고, 많은 관련 강의를 듣기를 실패한 경험들이 많습니다. 실무 개발자로서 강화학습과 머신러닝을 업무에 적용하고 싶은데, 수학적 배경이 깊지 않아도 어느 정도까지는 실무 적용 가능한 수준의 이해가 가능한지 , 수학적 난관을 만났을 때 어떤 접근법과 학습 전략이 효과적인지 , 제대로 이해하고 있다는 것을 확인할 수 있는 메타인지 방법이나 공부 전략은 무엇인지 현실적이고 구체적인 조언을 부탁드립니다.
csr에서는 번들링된파일을 받으면 브라우저에서 돔트리를 만들어서 화면에그리는데 7강 8분50초에서 next에서 사전렌더링을 할때에는 서버가 직접 js를 실행해서 렌더링을 한다고 하셨는데 그럼 서버에서 직접 돔트리를 그리는건가요? 질문자체가 이상할수 있는데 헷갈려서 질문드립니다ㅠ
같은 오브젝트를 합치기 강의 3:45쯤부터 작성하는 Clone.GetComponent<PlanetScript>().manager = this; 이 부분에서 에러가 생깁니다. 제 생각에는 해당 코드에서 PlanetScript를 선언해주지 않아서(전방 선언? 인클루드?) 인식을 못 하는 것 같은데 강의에서는 어떻게 잘 돌아가는건지 모르겠습니다. 혼자 해보려고 좀 붙잡고 있었는데 잘 모르겠습니다..
char *a[2]= {"Hello","World"}; printf("%s\n",*a);=> 출력값: Hello char*b[2][2]={{"hello","world"},{"app","dev"}}; printf("%s\n", *b); => 오류 일차원 일때는 출력할 때 정확한 값의 위치를 지정하지 않고 *a를 해도 출력이 되는데 이차원일 때는 안되는 이유가 무엇인가요?
주말코딩님, 안녕하세요! 항상 잘 듣고 있습니다. 다름이 아니고, 6:34 부분에서 j=j-1이 int j=0에서 -1을 해서 다시 j에 -1을 집어넣으라는 거로 이해했습니다. 그래서 j=-1이 되고 밑에 arr[-1+1]= key가 돼서 arr[0]에 key에 담아뒀던 31이 들어가는 것으로 이해했습니다. 근데 만약에 j가 포인터변수고 배열을 가리키고 있다면 j=j-1을 했을 때 배열을 가리키는 포인터 위치를 하나 앞으로 땡기라는건가요? 정확한 예시를 들기 어렵지만.. 뭔가 어떨 때는 포인터의 위치를 하나 앞으로 땡기는 거고 어떨 때는 실제로 값에 -1을 하라는 거던데 혹시 구별법이 있을까요? ㅠㅠ 답변주시면 감사하겠습니다.
static 메서드를 실행할 때는 클래스명.메서드명()으로 실행 가능하다고 하셨는데 이 코드에서는 클래스명 없이 바로 say()로 실행되고 있는데 이 부분은 문제가 없는 건가요? 그럼 만약 msg가 static 변수라면 say()를 실행했을 때 오류가 발생하지 않고 정상적으로 작동되나요?
안녕하세요, 강의 보면서 따라서 진행하고 있는데 발생하는 오류들이 있어서 문의드립니다. 1. 유니티 에디터 InputField 관련 > 유니티 에디터에서 실행했을 때 채팅 InputFiled에서 텍스트 입력이 안되는 상황 입니다. Console창에는 Info,Warning(PlayerController.gravity 관련) 메시지만 있습니다. 빌드해서 실행하면 인풋필드가 동작합니다. 2. 말풍선 관련 > 빌드 후, 클라이언트 2개로 서로 채팅을 하고 채팅창에 대화내용이 쌓이는 부분까지 진행하였습니다. 그리고 말풍선 관련 코드 작성해서 테스트를 진행했더니 채팅창에 내용이 쌓이지 않고 빈 말풍선만 생성되었습니다.. // SpeechBubble.cs // setText(string message){} SpeechText.text = message; // 위 부분에서 NullReferenceException 이 발생하는걸로 보입니다. 빌드하고나서 테스트를 진행하다보니 오류를 잡기가 어려운데 팁 같은게 있을까요? 혹시 챕터별 또는 완성본 코드를 확인할 수 있는 곳이 있을까요?