我正在尝试保存从HTTP POST返回的字符串值,但该字符串值一直未定义。
我的服务:
getString(id: string): Observable<any>{
const params = {
Id: id
}
return this.http.post(url , null, {params:params});
}
并且POST将返回我一些随机字符串
dsfsdfsdfsfsadfsdfsdafwrewrtwerctwertwerctwertwetrxwet
在我的组件中:
string1: any;
saveString() {
this.transactionService.getString(this.id).subscribe(data =>
{
this.string1= data;
})
}
但是我的string1
和data
返回未定义,HTTP服务成功返回了字符串值。如何保存值?
答案 0 :(得分:0)
尝试此设置中的数据订阅任何
string1: any;
saveString() {
this.transactionService.getString(this.id).subscribe((data:any) =>
{
this.string1= data;
})
}
答案 1 :(得分:0)
我认为您的代码有误。 POST需要在第二个参数中传递数据,请参见https://angular.io/guide/http中的文档,
/** POST: add a new hero to the database */
addHero (hero: Hero): Observable<Hero> {
return this.http.post<Hero>(this.heroesUrl, hero, httpOptions)
.pipe(
catchError(this.handleError('addHero', hero))
);
}