Timeout nur für /ai Calls, URL compare change
This commit is contained in:
parent
fe759f953f
commit
8a7e26d2b6
|
|
@ -8,21 +8,27 @@ export class TimeoutInterceptor implements HttpInterceptor {
|
||||||
constructor(@Optional() @Inject('TIMEOUT_DURATION') private timeoutDuration: number = 5000) {}
|
constructor(@Optional() @Inject('TIMEOUT_DURATION') private timeoutDuration: number = 5000) {}
|
||||||
|
|
||||||
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
|
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
|
||||||
return next.handle(req).pipe(
|
// Überprüfen, ob die URL mit '/ai' endet
|
||||||
timeout(this.timeoutDuration),
|
if (req.url.endsWith('/ai')) {
|
||||||
catchError((error: any) => {
|
return next.handle(req).pipe(
|
||||||
if (error instanceof TimeoutError) {
|
timeout(this.timeoutDuration),
|
||||||
// Timeout error handling
|
catchError((error: any) => {
|
||||||
return throwError(
|
if (error instanceof TimeoutError) {
|
||||||
() =>
|
// Timeout error handling
|
||||||
new HttpErrorResponse({
|
return throwError(
|
||||||
error: 'Request timed out',
|
() =>
|
||||||
status: 408, // HTTP status code for Request Timeout
|
new HttpErrorResponse({
|
||||||
}),
|
error: 'Request timed out',
|
||||||
);
|
status: 408, // HTTP status code for Request Timeout
|
||||||
}
|
}),
|
||||||
return throwError(() => error);
|
);
|
||||||
}),
|
}
|
||||||
);
|
return throwError(() => error);
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Für alle anderen URLs ohne Timeout fortfahren
|
||||||
|
return next.handle(req);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ export class EditBusinessListingComponent {
|
||||||
) {
|
) {
|
||||||
this.router.events.subscribe(event => {
|
this.router.events.subscribe(event => {
|
||||||
if (event instanceof NavigationEnd) {
|
if (event instanceof NavigationEnd) {
|
||||||
this.mode = event.url === '/createBusinessListing' ? 'create' : 'edit';
|
this.mode = event.url.startsWith('/createBusinessListing') ? 'create' : 'edit';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.route.data.subscribe(async () => {
|
this.route.data.subscribe(async () => {
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ export class EditCommercialPropertyListingComponent {
|
||||||
// Abonniere Router-Events, um den aktiven Link zu ermitteln
|
// Abonniere Router-Events, um den aktiven Link zu ermitteln
|
||||||
this.router.events.subscribe(event => {
|
this.router.events.subscribe(event => {
|
||||||
if (event instanceof NavigationEnd) {
|
if (event instanceof NavigationEnd) {
|
||||||
this.mode = event.url === '/createCommercialPropertyListing' ? 'create' : 'edit';
|
this.mode = event.url.startsWith('/createCommercialPropertyListing') ? 'create' : 'edit';
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.route.data.subscribe(async () => {
|
this.route.data.subscribe(async () => {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue