Por otra parte he leido algunos manuales sobre como hacer una api rest con node.
Mi duda es como devolver el contenido obtenido de una consulta mysql en el API node a la Promesa que origina la peticion en Angular. Especifico:
Tengo el archivo hero,service.ts con el siguiente contenido (no esta todo solo lo importante):
Código:
Aqui el trozo del API en Node donde ya tengo la informacion adquirida. La puedo pintar a la consola pero no se como devolversela a la promesa... @Injectable() export class HeroService { private heroesUrl = 'http://localhost:5000/api/heroes'; // URL to web api private headers = new Headers({'Content-Type': 'application/json'}); constructor(private http: Http) { } getHeroes(): Promise<Hero[]> { return this.http.get(this.heroesUrl) .toPromise() .then(response => response.json().data as Hero[]) .catch(this.handleError); } ...
Código:
La peticion se realiza bien desde angular, llega al server y puedo printar por consola el resultado, pero no se como devolverla a la parte de angular para que la escriba en el front.router.get('/heroes', function(req, res) { //req aqui seria para coger los parametros de la url mysql.connect("prueba",function(error,_connection){ if(_connection){ connection = _connection; console.log("conectado y devuelto"); mysql.getAllHeroes(connection,function(error,result){ console.log("vuelvo en getHeroes"); if(result){ console.log(result); res.json(result); } else{ res.json(500,{"msg":"Error"}); } }); } }); });
Soy bastante novatillo y para mi es una avalancha de cosas nuevas, si me podéis echar una mano y orientarme