我如何通过http.post angular2传递这样的字符串

时间:2017-08-17 04:10:23

标签: jquery sql-server angular http post

我有一个功能,当点击'像这样。

addTest(): void{

  let headers = new Headers({ 'Content-Type': 'application/json' }); 
  let body = '';
  this.http.post('http://localhost:10000/wa/dataAdd', 
                        body,
                        {headers:headers})
  .map((res: Response) => res.json())
  .subscribe( (res: Response) => { this.onRequestChange.emit({ isCreate:false}) });


}

所以,如果我需要像这样发送字符串

[{"purchaseId":"0001","Name":"สินค้า กs","Date":"2018-06-13T00:00:00","Price":5000,"NumberQty":2,"TtlPrice":10000}]

所以我把它转到body变量

let body = '[{"purchaseId":"0001","Name":"สินค้า กs","Date":"2018-06-13T00:00:00","Price":5000,"NumberQty":2,"TtlPrice":10000}]';

但我发送的值为null

所以如何发送这样的字符串以插入到数据库(SQL Server 2014)

1 个答案:

答案 0 :(得分:2)

根据我的经验,这是有效的

addTest (url:string, data:any): Observable<any>  {

  var headers = new Headers({ 'Content-Type': 'application/json'});
  var options = new RequestOptions({ headers: headers, });
  return this.http.post(url,data,options)
                .map((res: Response): Episodes => res.json())
                .catch(this.handleError);
}

数据是json对象