我的Web API方法返回字符串,并且我试图在Angular应用程序中使用该字符串。我使用了招摇工具,并且从Web API方面没有任何问题。它在Swagger中显示字符串
[HttpPut]
[Route("UpdateUserStatus")]
[ProducesResponseType(typeof(string), StatusCodes.Status200OK)]
public async Task<IActionResult> UpdateUserStatus(User user)
{
string userUpdated = await _userService.UpdateUserStatus(user);
return Ok(userUpdated );
}
我正在尝试按角度访问此字符串。服务返回这样
public UpdateUserStatus(user: User): Observable<any> {
const url = this._url + 'UpdateUserStatus';
return this._httpClient.put<any>(url, user);
}
this._service
.UpdateUserStatus(this.User)
.subscribe((response: any) => {
this._notificationService.info(
response, //this is not working
'User updated'
);
}, (error) => {
this._rapNotificationService.error(
'Update Failed. ',
'Failed'
);
});
显示“解析字符串时HTTP错误”错误。
答案 0 :(得分:0)
您可以指定需要字符串响应而不是json(这是默认设置)
public UpdateUserStatus(user: User): Observable<any> {
const url = this._url + 'UpdateUserStatus';
return this._httpClient.put<any>(url, user,{responseType: 'text'});
}
答案 1 :(得分:0)
尝试像这样使用observe: 'response'
public UpdateUserStatus(user: User): Observable<any> {
const url = this._url + 'UpdateUserStatus';
return this._httpClient.put<any>(url, user, {observe: 'response'});
}