当我尝试将数据从angular发布到我的nodejs后端时,它不起作用。
[Backend]这是捕获已发布数据的函数。我用邮差测试了它并且它工作了。 console.log仅用于测试。我还有一个bodyParser正在运行。
register : function (req, res) {
console.log(req.body);
res.json(req.body);
}
[前端]这是我调用发送数据的功能。我用断点和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
答案 0 :(得分:2)
您需要订阅帖子。
this.http
.post('http://127.0.0.1:5000/register', { user }, options)
.subscribe((result){
console.log('result',result);
});
更清楚的是,Angualr2 http服务正在使用rxjs Observables,它的本质和可观察性是可观察的,所以除非你订阅它们,否则它们不会做任何东西。