Fixed fetch errors
This commit is contained in:
parent
9350c837e5
commit
3ca956e531
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@ztimson/utils",
|
"name": "@ztimson/utils",
|
||||||
"version": "0.10.0",
|
"version": "0.10.1",
|
||||||
"description": "Utility library",
|
"description": "Utility library",
|
||||||
"author": "Zak Timson",
|
"author": "Zak Timson",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
@ -1,15 +1,3 @@
|
|||||||
import {XHR} from './xhr';
|
|
||||||
|
|
||||||
XHR.addInterceptor((resp: Response, next: () => void) => {
|
|
||||||
if(resp.status == 200) return next();
|
|
||||||
if(resp.status == 400) throw new BadRequestError(resp.statusText);
|
|
||||||
if(resp.status == 401) throw new UnauthorizedError(resp.statusText);
|
|
||||||
if(resp.status == 403) throw new ForbiddenError(resp.statusText);
|
|
||||||
if(resp.status == 404) throw new NotFoundError(resp.statusText);
|
|
||||||
if(resp.status == 500) throw new InternalServerError(resp.statusText);
|
|
||||||
throw new CustomError(resp.statusText, resp.status);
|
|
||||||
});
|
|
||||||
|
|
||||||
export class CustomError extends Error {
|
export class CustomError extends Error {
|
||||||
static code = 500;
|
static code = 500;
|
||||||
|
|
||||||
|
19
src/xhr.ts
19
src/xhr.ts
@ -1,3 +1,11 @@
|
|||||||
|
import {
|
||||||
|
BadRequestError,
|
||||||
|
CustomError,
|
||||||
|
ForbiddenError,
|
||||||
|
InternalServerError,
|
||||||
|
NotFoundError,
|
||||||
|
UnauthorizedError
|
||||||
|
} from './errors.ts';
|
||||||
import {clean} from './objects';
|
import {clean} from './objects';
|
||||||
|
|
||||||
export type Interceptor = (request: Response, next: () => void) => void;
|
export type Interceptor = (request: Response, next: () => void) => void;
|
||||||
@ -74,3 +82,14 @@ export class XHR {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
XHR.addInterceptor((resp: Response, next: () => void) => {
|
||||||
|
const getErr = (e: any) => e.error?.message || e.reason?.message || e.message || e.statusText || e.toString();
|
||||||
|
if(resp.status == 200) return next();
|
||||||
|
if(resp.status == 400) throw new BadRequestError(getErr(resp));
|
||||||
|
if(resp.status == 401) throw new UnauthorizedError(getErr(resp));
|
||||||
|
if(resp.status == 403) throw new ForbiddenError(getErr(resp));
|
||||||
|
if(resp.status == 404) throw new NotFoundError(getErr(resp));
|
||||||
|
if(resp.status == 500) throw new InternalServerError(getErr(resp));
|
||||||
|
throw new CustomError(getErr(resp), resp.status);
|
||||||
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user