我有一个get请求,该请求需要传递一些数据,我该如何在服务中做到这一点:
private campaignUrl = environment.apiUrl + '/campaign/';
constructor(private http: HttpRequestService) { }
getCampaign(uuid) {
return this.http.post(this.campaignUrl);
}
我需要在campaignUrl之后传递ID,这是我在swagger中的api网址:
/ api / campaign / {uuid} /
答案 0 :(得分:3)
是获取还是发布?
无论如何,您都可以这样:
return this.http.post(this.campaignUrl + uuid);
答案 1 :(得分:2)
另一个答案就足够了,但是我会提供这个,因为您使用示例ES6 template literals(倒钩)来几乎在那里:
private campaignUrl = environment.apiUrl + '/campaign/';
constructor(private http: HttpRequestService) { }
getCampaign(uuid) {
return this.http.get(`${this.campaignUrl}/${encodeURI(uuid)}`);
}
或带有箭头
getCampaign = (uuid) => this.http.get(`${this.campaignUrl}/${encodeURI(uuid)}`);
请注意,您可能想调用encodeURI()
(因为Angular不会帮您这样做)。如果您可以保证确保传递给getCampaign
的字符串总是 一种uuid格式(nnnn-nnnn-...
),则可以跳过此步骤。
此外,您在问题中说“获取请求”,但致电.post
,因此我认为您的文本正确而代码不正确。