Ya usé ngx en otra aplicación y fue genial. Sin embargo, en esta aplicación, en lugar de ingresar a la ubicación predeterminada localhost: 4200/assets, sigue intentando ingresar al entorno localhost: 8080. No sé por qué sucede esto. En la otra aplicación también se está utilizando el entorno.
/*environment*/ export const environment = { production: false, baseUrl: 'http://localhost:8080', }; /* APP MODULE */ export function HttpLoaderFactory(httpClient: HttpClient) { return new TranslateHttpLoader(httpClient); } TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] }, })
/*home component*/ ngOnInit() { this.translate.setDefaultLang('en'); this.translate.use('en'); } ``` auth.service { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true, }, intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { // Clone the request to add the new authenticated header. const authReq = req.clone({ url: environment.baseUrl + req.url, headers: req.headers.set('Authorization', SessionService.getToken()) }); // Pass on the cloned request instead of the original request. return next.handle(authReq) .pipe( tap(event => {}, err => { // If unauthorized request if (err instanceof HttpErrorResponse && (err.status === 401 || err.status === 403)) { this.loginService.logout(); } }) ); } ```
localhost:8080 y obtiene el localhost:4200 normal. ¿Podrías ayudarme con esto?
Puede probar lo siguiente en su HttpLoaderFactory
:
export function HttpLoaderFactory(http: HttpClient) { return new TranslateHttpLoader(http, 'assets/i18n/', '.json'); }
En caso de que esté utilizando un interceptor
(p. ej., AuthInterceptor
), debe forzarlo para que maneje las solicitudes que comiencen solo con baseUrl
e ignore las locales, como las siguientes:
intercept( request: HttpRequest<unknown>, next: HttpHandler ): Observable<HttpEvent<any>> { if (request.url.startsWith(environment.baseUrl)) { // Add your logic here // eg inject the token and next.handle the request again } else { return next.handle(request); } }