angular2-rc1 http.post无法正常工作

布山·加德卡(Bhushan Gadekar)

我正在创建一个angular2应用程序,其中在服务中使用http来POST调用mongoDB

当我POST第一次拨打电话时,它工作正常,即条目已正确插入数据库中,但是当我第二次发送数据时,则未插入。

如果我是在第一次插入后重新加载页面,则其工作正常。

我进行了一些调试,发现在第二个请求中我req.body是空白的。

这是我的代码:

page.service.ts

savePage(page: Object) {
    this.headers.append('Content-Type', 'application/json');
    let url = this.baseUrl+'/pm/pages/';      
    let data={};
    data["data"]=page;
    console.log(data); //this is printing both times correctly
    //on second request data is blank where as it works correctly for first time       
    return this.http.post(url, JSON.stringify(data),{headers: this.headers})
        .map((res: Response) => res.json()).catch(this.handleError);
}

这是节点服务中显示的req.body中的数据。

第一个请求

body:{ 
    data:{ 
        name: 'wtwetwet',
        desc: 'wetwetwetetwte',
        isPublic: true,
        createdBy: 'Bhushan'
    }
}

第二个请求

body: {}

有输入吗?

布山·加德卡(Bhushan Gadekar)

我终于意识到,我的方法曾经在每次被调用时都设置了内容类型。

因此更改代码从:

savePage(page: Object) {
    this.headers.append('Content-Type', 'application/json');
    let url = this.baseUrl+'/pm/pages/';      
    let data={};
    data["data"]=page;           
    return this.http.post(url, JSON.stringify(data),{headers: this.headers})
    .map((res: Response) => res.json()).catch(this.handleError);
}

至:

savePage(page: Object) {
    this.headers=new Headers();
    this.headers.append('Content-Type', 'application/json');
    let url = this.baseUrl+'/pm/pages/';      
    let data={};
    data["data"]=page;             
    return this.http.post(url, JSON.stringify(data),{headers: this.headers})
    .map((res: Response) => res.json()).catch(this.handleError);
}

为我做了把戏。实际上,在进行rest调用时,我们只需要设置一次标头,但是在我的代码中已经设置了标头,因此创建新的Headers Object帮助我清除了之前设置的所有配置。

感谢您的帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用所有rc1软件包的angular2 npm http 404

来自分类Dev

HTTP和嵌套对象(Angular2 RC1 + TS)

来自分类Dev

HTTP和嵌套对象(Angular2 RC1 + TS)

来自分类Dev

Angular2 rc1 ngFor“无法找到类型为'object'的其他支持对象'[object Object]'

来自分类Dev

卡在angular2(RC1)路由上

来自分类Dev

Angular2 RC1多级routerLink指令

来自分类Dev

卡在angular2(RC1)路由上

来自分类Dev

Angular 2 rc1 TypeError:无法读取未定义的属性“注释”

来自分类Dev

缩小Angular 2 rc1

来自分类Dev

Angular 2 rc1中的RouteParams

来自分类Dev

Angular 2 rc1中的RouteParams

来自分类Dev

Angular2 / Http(POST)标头

来自分类Dev

同步http post angular2

来自分类Dev

根据Angular2 rc1中的路由隐藏元素

来自分类Dev

定义但未识别的Angular2 RC1子路线

来自分类Dev

刷新页面时,angular2 rc1默认路由问题

来自分类Dev

Angular2 RC1实现加载指标的最佳方法

来自分类Dev

如何让Angular2 RC1知道已更改的DOM

来自分类Dev

HashLocationStrategy在Angular2 RC1中不起作用

来自分类Dev

Angular2 rc1,在哪里是shims_for_IE

来自分类Dev

Angular2 rc1,新路由器和传递数据

来自分类Dev

Angular2 RC1,如何使用ngc离线编译静态

来自分类Dev

Angular2 RC1管道始终通过未定义

来自分类Dev

HashLocationStrategy在Angular2 RC1中不起作用

来自分类Dev

Angular2 RC1在PropDecoratorFactory上未找到带有@Input的指令注释

来自分类Dev

Angular2 RC1错误“提供的参数与调用目标的任何签名均不匹配”

来自分类Dev

Angular2 Http Post无法执行

来自分类Dev

Angular 2 RC1:从使用的初始URL获取参数

来自分类Dev

无法将任何路由与子路由和新的Angle 2 RC1路由器匹配

Related 相关文章

热门标签

归档