美文网首页我爱编程
angular4项目后端接收不到http.post发送数据的问题

angular4项目后端接收不到http.post发送数据的问题

作者: fzp_xf | 来源:发表于2018-02-23 17:02 被阅读0次

    终于解决了跨域问题之后发现不管什么操作后台返回过来的数据都是一样的,谷歌查看数据已经发送过去了,但是后台没有处理,为什么?

    对比header之后发现angular的http.post发送的参数是json格式的,传参方式是request payload,不是用的form传输,header中的content-type也不一样,修改一下header,并把json格式转化一下即可:

    private headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8' });

    let val=$.param(value);
    this.http
    .post(url,val,{headers:this.headers})
    .map(res => res.json()).subscribe(data=>{
    if (data) {
    this.title=data.msg;
    }
    })

    注意此处有坑,我写上{headers:this.headers}之后提示错误,查了一下http的post请求,是可以带参数的,为什么会报错呢?看了一下报错信息是:


    1.png

    是这句话出了错:
    private headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8' });
    头部引入:import { Http,Headers } from '@angular/http'; 即可

    相关文章

      网友评论

        本文标题:angular4项目后端接收不到http.post发送数据的问题

        本文链接:https://www.haomeiwen.com/subject/byvxxftx.html