Angular_http_post

由于Angular http默认的post 提交是使用ajax的post请求,所以其 Content-Type为application/json。所以参数的携带位置是request Body当中,但是后台框架并不能对body中的携带参数进行解析。所以建议将Content-Type改为application/x-www-form-urlencoded 并封装

部分示例代码:

constructor(private http: Http, //private log: LogService

  ) {

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

    this.options = new RequestOptions({ headers: this.headers });

  }

/**

  * form post方法

  * @param url

  * @param requestParams

  */

  public hasHeaderPost(url: string, params: any) {

    return this.http.post(url, params,this.options).map(res => res.json());

  }

  /**

  * ajax post方法

  * @param url

  * @param requestParams

  */

  public post(url: string, params: any) {

    return this.http.post(url, params).map(res => res.json());

  }

如此获取参数的方法同get类型请求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。