Angular 4 中的 http 问题 - 似乎没有执行
issue with http put in Angular 4 - doesn't seem to execute
这就是您在 Angular 4 中发出 http put 请求的方式吗?
我有一个工作 get,put 应该是类似的:
approve(id: string): Observable<any> {
const requestHeaders = new HttpHeaders().set('Content-Type', 'application/json');
return this.httpClient.put(
`${this.endpointUrl}/${id}`,
null,
{ headers: requestHeaders, responseType: 'text' as 'text' })
.map(rez => JSON.parse(rez))
// .catch(error => this.handleError(error));
}
空主体的语法是否正确?
控制台中没有记录错误,因此没有提示为什么它不起作用。如果我大摇大摆地做到这一点,我会在数据库中得到预期的变化。
我实际上对 ${this.endpointUrl}/${id}
行进行了硬编码,以确保 url 也是正确的(与 swagger 相同)。
http 客户端请求是 "cold" 可观察对象,它们不会在 Angular 中立即执行,需要订阅才能使它们 "hot"(执行)。
你需要这样称呼它
approve(1).subscribe();
这就是您在 Angular 4 中发出 http put 请求的方式吗? 我有一个工作 get,put 应该是类似的:
approve(id: string): Observable<any> {
const requestHeaders = new HttpHeaders().set('Content-Type', 'application/json');
return this.httpClient.put(
`${this.endpointUrl}/${id}`,
null,
{ headers: requestHeaders, responseType: 'text' as 'text' })
.map(rez => JSON.parse(rez))
// .catch(error => this.handleError(error));
}
空主体的语法是否正确?
控制台中没有记录错误,因此没有提示为什么它不起作用。如果我大摇大摆地做到这一点,我会在数据库中得到预期的变化。
我实际上对 ${this.endpointUrl}/${id}
行进行了硬编码,以确保 url 也是正确的(与 swagger 相同)。
http 客户端请求是 "cold" 可观察对象,它们不会在 Angular 中立即执行,需要订阅才能使它们 "hot"(执行)。
你需要这样称呼它
approve(1).subscribe();