We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
버그 설명 이미 예약 과정중에 있는 멘토에게 다시 예약을 했을 때 409 에러 캐치가 두 번 일어납니다 42manito/src/components/Mentor/Modal.tsx
const handleYes = async () => { if (!userId) { alert("로그인이 필요합니다."); return; } if (connectState.categoryId === 0) { alert("멘토링 분야를 선택해주세요."); } else if (connectState.hashtags.length <= 0) { alert("관심 분야를 선택해주세요."); } else if (connectState.message.length === 0) { alert("요청 메세지를 입력해주세요."); } else { try { await postReservation({ mentorId: mentorId, menteeId: userId, categoryId: connectState.categoryId, requestMessage: connectState.message, hashtags: connectState.hashtags, }).unwrap(); alert("예약이 완료되었습니다."); } catch (e: BaseQueryError<any>) { if (e.status === 409) { alert("이미 예약이 완료된 멘토입니다."); } else { alert("예약이 실패하였습니다."); } } dispatch(CurrMentorSlice.actions.closeConnectModal()); dispatch(MentorConnectSlice.actions.initMentorConnect()); } };
42manito/src/utils/BaseQuery.ts
export const BaseQuery = ( { baseUrl }: { baseUrl: string } = { baseUrl: "" }, ): BaseQueryFn< { url: string; method: AxiosRequestConfig["method"]; data?: AxiosRequestConfig["data"]; params?: AxiosRequestConfig["params"]; }, unknown, ErrorResponse > => async ({ url, method, data, params }) => { try { const accessToken = localStorage.getItem("accessToken"); const result = await axios({ url: baseUrl + url, method, data, params, headers: { ...(accessToken && { Authorization: `Bearer ${accessToken}` }), // 헤더에 토큰을 추가합니다. }, timeout: 5000, }); return { data: result.data }; } catch (axiosError) { const err = axiosError as AxiosError; if (err.response) { const status = err.response.status; if (status === 400) { alert("잘못된 요청입니다."); } else if (status === 404) { alert("존재하지 않는 작업입니다."); } else if (status === 409) { alert("이미 완료된 작업입니다."); } else if (status === 401 || status === 403) { alert("권한이 없습니다."); Router.push("/"); } else if (status === 500) { alert("서버에 오류가 발생했습니다."); } else if (status === 503) { alert("서버가 점검중입니다."); } } else { console.error(err.message); } return { error: { status: err.response?.status, data: err.response?.data || err.message, }, }; } };
재현 방법 재현 방법은 다음과 같이 기술합니다. 이미 예약 과정 안에 있는 멘토에게 다시 예약 신청
정상 동작 alert가 하나만 떠야 할 것 같아염
The text was updated successfully, but these errors were encountered:
409 alert 제외하는걸로 해결하겠습니다. (409 응답은 따로 처리되고 있음) #240 에서 수정예정
Sorry, something went wrong.
No branches or pull requests
버그 설명
이미 예약 과정중에 있는 멘토에게 다시 예약을 했을 때 409 에러 캐치가 두 번 일어납니다
42manito/src/components/Mentor/Modal.tsx
42manito/src/utils/BaseQuery.ts
재현 방법
재현 방법은 다음과 같이 기술합니다.
이미 예약 과정 안에 있는 멘토에게 다시 예약 신청
정상 동작
alert가 하나만 떠야 할 것 같아염
The text was updated successfully, but these errors were encountered: