API 및 공용 기능들의 동작을 테스트할 수 있습니다
useApi 함수의 자동 에러 처리 기능을 테스트합니다. 에러가 발생하면 자동으로 alert가 표시됩니다.
{{
autoErrorResult
}}
{`// 자동 에러 처리 예제
const apiTest = async () => {
const response = await useApi<ApiResponse<object>>(
"/admin/common-codes/USER_STATUS_ACTIVE222"
);
if (response) {
console.log("response:", response);
}
};`}
useApi 함수의 직접 에러 처리 기능을 테스트합니다. 에러 타입에 따른 세밀한 처리를 확인할 수 있습니다.
{{
customErrorResult
}}
{`// 직접 에러 처리 예제
const apiTestWithCustomError = async () => {
try {
const response = await useApi<ApiResponse<object>>(
"/admin/common-codes/USER_STATUS_ACTIVE222",
{
handleError: false, // 에러를 직접 처리
showAlert: false, // alert 표시 안함
}
);
if (response) {
console.log("response:", response);
}
} catch (error: any) {
// 에러 타입에 따른 세밀한 처리
if (error.response?.status === 404) {
alert("요청한 코드를 찾을 수 없습니다.");
} else if (error.response?.status === 403) {
alert("접근 권한이 없습니다.");
} else if (error.response?.status >= 500) {
alert("서버 오류가 발생했습니다.");
} else {
alert("알 수 없는 오류가 발생했습니다.");
}
}
};`}
다양한 API 엔드포인트를 테스트할 수 있습니다.
{{
result.data
}}
{`// 추가 API 테스트 예제
const testValidEndpoint = async () => {
try {
const response = await useApi<ApiResponse<object>>(
"/admin/common-codes/USER_STATUS_ACTIVE",
{
handleError: false,
showAlert: false,
}
);
console.log("성공:", response);
} catch (error: any) {
console.log("에러:", error.message);
}
};
const testNetworkError = async () => {
try {
const response = await useApi<ApiResponse<object>>(
"/non-existent-endpoint",
{
handleError: false,
showAlert: false,
}
);
} catch (error: any) {
console.log("네트워크 에러:", error.message);
}
};`}
자동 에러 처리: useApi 함수가 에러를 자동으로 처리하고 사용자에게 알림을 표시합니다.
직접 에러 처리: handleError: false 옵션을 사용하여 에러를 직접 처리할 수 있습니다.
에러 타입: 404 (Not Found), 403 (Forbidden), 500+ (Server Error) 등 다양한 에러 상황을 테스트할 수 있습니다.