无法将数据从Angular发布到我的nodejs api

无法将数据从Angular发布到我的nodejs api

问题描述:

当我尝试从angular发布数据到我的nodejs后端时,它不起作用。无法将数据从Angular发布到我的nodejs api

[后端]这是捕获发布数据的函数。我用邮差测试过它,它工作。 console.log仅用于测试。我也有一个bodyParser在运行。

register : function (req, res) { 
    console.log(req.body); 
    res.json(req.body); 
} 

[Frontend]这是我调用的发送数据的函数。我用断点和console.log测试了它,并调用了该函数。我想我测试了所有可能的方法来格式化标题。

import { Injectable } from '@angular/core'; 
import { Http, Response, Headers, RequestOptions } from '@angular/http'; 

@Injectable() 
export class DataService { 
    constructor (private http: Http) {} 

    register(user:string): void{ 
     let headers = new Headers({ 'Content-Type': 'application/json' }); 
     let options = new RequestOptions({ headers: headers }); 

     this.http.post('http://127.0.0.1:5000/register', { user }, options); 

    } 
} 

当我把一个断点在this.http.post(...);我得到这个:link to image

您需要订阅发布。

this.http 
     .post('http://127.0.0.1:5000/register', { user }, options) 
     .subscribe((result){ 

      console.log('result',result); 

     }); 

更清晰,Angualr2 HTTP服务使用rxjs观测量,它的可观察到的,在它的性质和观测懒惰,所以除非你订阅了他们,他们不会做任何事情。

+0

是的,它的工作!谢谢!我认为问题出在头上。 –

+0

好,接受? – Milad