Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

174
Vistas
Angular 2: obtenga nombres de archivos json de http.get

En un directorio del servidor tengo una lista de archivos json. Necesito importar cada nombre de archivo json en mi componente angular 2 en una matriz de cadenas u otra estructura.

Traté de hacer un http.get al servidor web usando este servicio.

 export class AnUtenteService { getFiles() : Observable<string[]> { return this.http.get(directory) .map(this.extractData) .catch(this.handleError); } private extractData(res: Response) { let body = res.json(); return body.data || { }; } private handleError (error: any) { let errMsg = (error.message) ? error.message : error.status ? `${error.status} - ${error.statusText}` : 'Server error'; console.error(errMsg); // log to console instead return Observable.throw(errMsg); } }

Pero cuando en mi componente llamo a anutenteservice.getFiles() me sale este error: Token inesperado < en JSON en la posición 0 . este es mi componente

 export class OrderslistComponent{ newsList; errorMessage; constructor(private anutenteservice: AnUtenteService, private http: Http) {} ngOnInit() { this.anutenteservice.getFiles() .subscribe(data => this.newsList = data, error => this.errorMessage = <any>error); } }

No entiendo donde esta el error. ¿Qué tengo que hacer?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Intenta hacer esta estructura:

 export class OrderslistComponent { newsList; errorMessage; constructor(private anutenteservice: AnUtenteService) { this.anutenteservice.getFiles.subscribe((data) => { this.newsList = data; } ); } ngOnInit() { } }

Y agregue Http a su clase de servicio. Agregue esto a su clase de servicio:

 constructor(private http: Http) { }

Actualización 1:

Intenta cambiar el tipo, aquí:

 private extractData(res: Response) { let body = res.text(); return body.data || { }; }

En caso de que su tipo de respuesta no sea un JSON .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda