Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
5d673799cc | |||
bb0271e021 | |||
718feb74ae | |||
82aa80d7d9 | |||
67831cd37f | |||
777817b588 | |||
c7dd378eb3 | |||
9d9f67c91a | |||
82cc8c29e1 | |||
625b1c6871 |
2
package-lock.json
generated
2
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@apiglobal/typedrequest",
|
||||
"version": "1.0.32",
|
||||
"version": "1.0.37",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@apiglobal/typedrequest",
|
||||
"version": "1.0.32",
|
||||
"version": "1.0.37",
|
||||
"private": false,
|
||||
"description": "make typed requests towards apis",
|
||||
"main": "dist_ts/index.js",
|
||||
|
@ -1,3 +1,4 @@
|
||||
export * from './typedrequest.classes.typedrequest';
|
||||
export * from './typedrequest.classes.typedhandler';
|
||||
export * from './typedrequest.classes.typedrouter';
|
||||
export * from './typedrequest.classes.typedresponseerror';
|
||||
|
@ -1,4 +1,5 @@
|
||||
import * as plugins from './typedrequest.plugins';
|
||||
import { TypedResponseError } from './typedrequest.classes.typedresponseerror';
|
||||
|
||||
export class TypedRequest<T extends plugins.typedRequestInterfaces.ITypedRequest> {
|
||||
public urlEndPoint: string;
|
||||
@ -23,8 +24,10 @@ export class TypedRequest<T extends plugins.typedRequestInterfaces.ITypedRequest
|
||||
});
|
||||
const responseBody: T = response.body;
|
||||
if (responseBody.error) {
|
||||
console.log(responseBody.error.text);
|
||||
console.log(responseBody.error.data);
|
||||
console.error(`Got an error ${responseBody.error.text} with data ${JSON.stringify(responseBody.error.data)}`);
|
||||
if (!responseBody.retry) {
|
||||
throw new TypedResponseError(responseBody.error.text, responseBody.error.data);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
if (responseBody.retry) {
|
||||
|
@ -3,7 +3,7 @@ import * as plugins from './typedrequest.plugins';
|
||||
export class TypedResponseError {
|
||||
public errorText: string;
|
||||
public errorData: any;
|
||||
constructor(errorTextArg: string, errorDataArg: any) {
|
||||
constructor(errorTextArg: string, errorDataArg?: any) {
|
||||
this.errorText = errorTextArg;
|
||||
this.errorData = errorDataArg;
|
||||
}
|
||||
|
@ -88,13 +88,7 @@ export class TypedRouter {
|
||||
const typedHandler = this.getTypedHandlerForMethod(typedRequestArg.method);
|
||||
|
||||
if (!typedHandler) {
|
||||
const availableMethods: string[] = [];
|
||||
await this.handlerMap.forEach(async handler => {
|
||||
availableMethods.push(handler.method);
|
||||
});
|
||||
console.log(`Cannot find method for ${typedHandler}`);
|
||||
console.log(`Available methods are:`);
|
||||
console.log(availableMethods);
|
||||
console.log(`Cannot find handler for methodname ${typedRequestArg.method}`);
|
||||
typedRequestArg.error = {
|
||||
text: 'There is no available method for this call on the server side',
|
||||
data: {}
|
||||
|
Reference in New Issue
Block a user