• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 선생님 회원관리기능 1 강의만 봤는데요

선생님 회원관리기능 1 강의만 봤는데요

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #100809

    여한추
    참가자
    passport사용 중 자꾸 값이 전달 되지 않습니다.
     
    
    1
    이렇게 설정해주고 
    2
    
    이렇게 하면 passport.use안에서 console.log가 왜 작동을 안하나요?
    폼에 입력한 username이 콘솔로그 찍혀야하지 않나요?
     
    참고로 react에서 form태그는 사용하지 않았고, name속성도 잘 지정해줬는데 왜 콘솔로그가 안찍힌지 모르겠습니다ㅜㅜ
    
    다만 passport.authenticate의 콘솔로그는 작동하긴 합니다
    3
    
    
    혹시몰라 리액트 코드입니다
    
    
    
    import React, { useState } from 'react';
    import '../css/initial.css';
    import '../css/common.css';
    import '../css/login.css';
    import axios from 'axios';
    import { useNavigate } from 'react-router-dom';
    const Login = () => {
      const navigate = useNavigate();
      const [email, setEmail] = useState('');
      const [pw, setPw] = useState('');
      const [errorMessage, setErrorMessage] = useState('');
      function check(email, pw) {
        const trimEmail = email.trim();
        const trimPw = pw.trim();
        if (!trimEmail.length) {
          return '이메일을 입력해주세요';
        }
        if (!trimPw.length) {
          return '비밀번호를 입력해주세요';
        }
        return false;
      }
      function handleLogin() {
        const alertText = check(email, pw);
        // alertText가 있으면 에러메세지 출력
        if (alertText) {
          setErrorMessage(alertText);
        } else {
          axios
            .post(`${process.env.REACT_APP_API_LOCALURL}/Login`, {
              email: email,
              pw: pw,
            })
            .then((res) => {
              console.log('로그인 성공');
              navigate('/home');
            })
            .catch((err) => {
              if (err.response.status == 401) {
                console.log('일치하는 회원정보가 없습니다.');
                setErrorMessage('일치하는 회원정보가 없습니다.');
              }
            });
        }
      }
      return (
        <div className="container">
          <div className="menu_title">
            <h1>로그인</h1>
          </div>
          <div className="loginInput_container">
            <div className="loginInput_id">
              <input
                type="text"
                placeholder="이메일"
                onChange={(e) => {
                  setEmail(e.target.value);
                }}
                name="username"
              ></input>
            </div>
            <div className="loginInput_pw">
              <input
                type="password"
                placeholder="비밀번호"
                onChange={(e) => {
                  setPw(e.target.value);
                }}
                onKeyDown={(e) => {
                  if (e.key === 'Enter') {
                    handleLogin();
                  }
                }}
                name="password"
              ></input>
            </div>
            <div className="errorMessage">{errorMessage}</div>
            <div className="loginButton_container">
              <button
                className="loginButton"
                onClick={() => {
                  handleLogin();
                }}
              >
                로그인
              </button>
            </div>
          </div>
        </div>
      );
    };
    export default Login;
    
    
    		
    	
    #100818

    codingapple
    키 마스터
    나머지 2개강의도 들어야 잘될 수 있습니다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠