从角度6的asp.net核心读取响应状态码

时间:2018-06-28 01:54:37

标签: c# angular typescript http asp.net-core

我在Asp.net core 2中有一个API,我需要从响应中捕获状态代码,但是在我的角度响应中,只有我的API结果。

我在API上的方法

[HttpPost]
    [Route("cadastrar-categoria")]
    public async Task<IActionResult> CadastrarCategoriaAsync([FromBody]Categoria item)
    {
        try
        {
            var sucesso = await _service.CadastroCategoria(item);
            if (sucesso == 1)
            {
                return Ok("Sucesso");
            }
            else
            {
                return BadRequest("Erro");
            }
        }
        catch (Exception ex)
        {
            return BadRequest(ex.Message);
        }
    }

我的服务以棱角分明

CadastrarCategoria(nome: string) {
 let data = new CadastroCategoriaDto();
 data.Nome = nome;

 return this.req
   .post(environment.urls.cadastrarProduto, data)
   .subscribe((res: Response) => {
     console.log(res);
   });

}

我在浏览器中的答复仅此而已。 enter image description here

如何从此响应中捕获状态代码? 返回Ok()的示例,我需要接收状态码200。

1 个答案:

答案 0 :(得分:1)

如果您希望通过订阅方法获得完整回复,请使用{observe: 'response'}

示例:

return this.req
   .post(environment.urls.cadastrarProduto, data,{observe: 'response'})
   .subscribe((res: HttpResponse) => {
     console.log(res.status);
   });