我想用一个角度为4.0的http.get()发送一个值

时间:2017-05-04 03:16:26

标签: angular

我想在网址中包含一个值。 我想发送这样的URL。

http://localhost:4200/get.html?start=2016&end=2017

这是我制作的一种方法。

let headers = new Headers({ 'Content-Type': 'application/json' });
dateData = {start:"2016",end:"2017"};
let options = new RequestOptions({ headers: headers, body: dateData});
this.http.request(new Request({
  method: "Get",
  url: "./get.html"
}),options).subscribe((res: Response) => {
  console.log(res);
},error => {
  console.log(error);
});

但是,不包括价值

http://localhost:4200/get.html

2 个答案:

答案 0 :(得分:0)

应该是URLSearchParams,而不是body

你可以试试这个:

let params = new URLSearchParams();
params.set('start', '2016');
params.set('end', '2017');

let options = new RequestOptions({ headers: headers, params: params);

答案 1 :(得分:0)

按照您的方式,您没有正确使用http.get()。你应该这样使用它。

let headers = new Headers({'Content-Type': 'application/json'});
let startDate = '2016';
let endDate = '2017';
let baseUrl = 'http://localhost:4200/get.html';

this.http.get(`${baseUrl}?start=${startDate}&end=${endDate}`, {headers:headers})
.subscribe((res: Response) => {
  console.log(res);
},error => {
  console.log(error);
});