Aqui dejo mi codigo
export interface UsuariosHateoas{
_embedded: {
usuarios: Usuario[];
_links: { self: { href: string } };
}
}
export interface Usuario {
userId?: number;
userName?: string;
userPassword?: string;
userEnabled?: boolean;
name?: string;
lastName?: string;
userEmail?: string;
roles?: any[];
}
La conexión al backend*
getUsers() {//: Observable<Usuario[]>
return this.http.get<Usuario[]>(this.urlEndpoint)
.pipe(map((response: any)=>{ return response._embedded.usuarios}));
}
tengo un problema al intentar retorna datos de tipo JSON en si son datos HATEOAS o HAL quien pertenece a lo datos HATEOAS este dato me retorna con links talvez ahí sea el problema pero no se como obviarlas o utilizarlas se pierde pareciera que no lo asigna, pero si lo estoy asignando imprimo los datos dentro del susbcribe y existe tal como se ve en la imagen pero al retornar se pierde y me imprime vacío
import { UserFormService } from 'src/app/auth/forms/user-form.service';
import { Usuario } from './../../core/models/usuario';
import { Injectable } from '@angular/core';
import { UserService } from 'src/app/core/services/user.service';
@Injectable({
providedIn: 'root'
})
export class UserControllerService {
private usuario: Usuario = {};
public userData:Usuario[]=[];
constructor(private userFormService: UserFormService, private userService: UserService) {}
}
getUsers():Usuario[]{
//DATO SE PIERDE AL RETORNAR
this.userService.getUsers().subscribe(
response=>{
this.userData=response;
console.log(this.userData);//Data existe
}
);
return this.userData;// Retorno vacio
}
}
dato imprimido retornado