inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

React로 NodeBird SNS 만들기

5-12. passport 총정리와 실제 로그인

result를 console로 찍어보니..

215

이주호

작성한 질문수 39

0

게속 프론트에서 nickname 이 없다고해서

result를 console로 찍어보니

  1. Promise {<pending>}
    1. [[PromiseStatus]]"resolved"

javascript react

답변 4

1

이주호

아.... 감사합니다. ㅠㅠㅠ 이런 중대한 실수를 머가리 박겠습니다.

1

제로초(조현영)

loginAPI에서 * 빼주세요.

1

제로초(조현영)

Promise가 pending인데요? saga 코드를 보여주세요.

0

이주호

import { allforktakeLatestcallputtaketakeEverydelay } from "redux-saga/effects";
import { LOG_IN_SUCCESSLOG_IN_FAILURELOG_IN_REQUEST
    SIGN_UP_SUCCESSSIGN_UP_REQUESTSIGN_UP_FAILURE } from '../reducers/user';
import axios from 'axios'

axios.defaults.baseURL = 'http://localhost:8080/api'//증복된거 줄이기

function* loginAPI(loginData) {
    return axios.post('/user/login'loginData); //요청을 보내면 응답을 해주는 애 (SUCCESS인지 FAILURE인지)D
}

function* login(action) {
    try { //call은 *동기호출* loginAPI는 서버 요청을 보내는부분 요청을 보내면 받을때까지 기다림, fork로 하면 비동기여서 요청을 보내면 응답을 받지도않고 바로 그 다음줄들 실행
        const result = yield call(loginAPIaction.data); //call은 함수를 동기적 호출 server에서 로그인 요청을 보내고 로그인이 성공했다면 그 다움줄 실행 
        console.log(result);
        yield put({ //put은 dispatch 랑 똑같은 역할, loginAPI에 요청을 보내고 응답을 받아야지만 이 줄이 실행
            type: LOG_IN_SUCCESS//yied call(loginAPI)가 요청을 보내 로그인이 성공이면 redux에 LOGIN_IN_SUCCESS 실행
            data: result.data //여기에 user정보가들어있음, loginAPI는 로그인이 성공이됬다면 성공이된 user의 데이터를 보내고 그걸 result라는 변수에 담아서 reducer에 보내기
        })
    } catch (e) { // loginAPI 실패일시 여기에 LOG_IN_FAILURE 에러가 남
        console.error(e);
        yield put({
            type: LOG_IN_FAILURE //로그인이 실패면 LOG_IN_FAILURE 실행
        })
    }
}

function* watchLogin() { //watch라고 하는이유는 action이 들어와야 실행이되기때문에 기다린다고해서 watch라고 함 
   yield takeEvery(LOG_IN_REQUESTlogin); //LOG_IN Action 받을때까지 기달림 받으면, login 함수실행 login 함수에서는 loginAPI로 서버와의 통신
}

next 10 이상에서는 redux dev tool 구동이 안되나요?

0

272

1

세션 갱신 문의 건

0

482

7

배포 진행 후 Highlight updates components render 표시

0

445

1

똑같은 기능을 하는 테이블

0

447

4

관계형

0

312

2

프론트 서버를 이용하지 않는경우

1

299

3

인피니트 스크롤링 사용시 오류

0

278

0

계속 이런에러가 떠서 해결하기는 했는데 어떤 의미인지 모르겠습니다.

0

433

2

req.user가 언제 생성되나요??

0

330

2

Cannot read property 'id' of null 에러

0

332

1

리트윗한 게시글 불러오는 sequelize

0

252

1

result.data에서 images인 이유

0

281

2

takeLatest에 대한 질문입니다.

1

342

2

프론트에서 express를 사용하지 않을때 동적라우팅

0

501

6

getInitialProps가 클라이언트에서 수행되는 이유?

0

258

1

리로드하면 팔로우 언팔로우 값이 초기화 되는 문제입니다.

0

445

2

스타일드 컴포넌트와 className을 통한 스타일 적용의 차이에 대해 궁금합니다

0

585

2

할인 쿠폰 사용이 안되는되요 (848-f9af83f183e3)

0

365

1

nodejs mvc 패턴

0

975

4

사용하고 보니, 람다 구성이 궁금합니다!

0

266

1

제로초님

0

445

1

새로고침 로그인 풀림 문제.

0

247

1

안녕하세요. 강의 너무 감사합니다

0

157

1

제로초님

0

170

1