Atualização ASP.NET Core 2.0 para 3.1 - API não recebe mais os parâmetros do método POST
18/05/2020
0
Senhores, boa tarde.
Pesquisei muito antes de abrir esse post, inclusive aqui, neste fórum. Encontrei dúvidas parecidas as quais tentei adaptar ao meu caso porem sem sucesso.
A questão é a seguinte:
Foi desenvolvida uma API em ASP.NET Core 2.0, mas por algumas solicitações do cliente, necessitei migrar para a versão 3.1. Existe uma SPA em Angular 7 que faz a requisição à API através de um método POST passando os parâmetros para a API que retornava um conjunto de dados para aplicação montar a tela. Após a atualização parou de funcionar! Por isso, gostaria de pedir a ajuda de vocês, por que, eu já esgotei as minhas tentativas.
**No Controller da API está da seguinte maneira:**
**E no angular se encontra dessa forma:**
Ao debugar a API, percebo que os dados do parâmetro **body** chegam nulos. Já tentei das seguintes maneiras abaixo, mudar a implementação do POST na API porém sem sucesso:
Por isso se possível, gostaria muito de contar com a colaboração de vocês.
Desde já muito obrigado!
Pesquisei muito antes de abrir esse post, inclusive aqui, neste fórum. Encontrei dúvidas parecidas as quais tentei adaptar ao meu caso porem sem sucesso.
A questão é a seguinte:
Foi desenvolvida uma API em ASP.NET Core 2.0, mas por algumas solicitações do cliente, necessitei migrar para a versão 3.1. Existe uma SPA em Angular 7 que faz a requisição à API através de um método POST passando os parâmetros para a API que retornava um conjunto de dados para aplicação montar a tela. Após a atualização parou de funcionar! Por isso, gostaria de pedir a ajuda de vocês, por que, eu já esgotei as minhas tentativas.
**No Controller da API está da seguinte maneira:**
[HttpPost] [Route("api/[controller]")] public IGResult Post(Filtro filtro) { Console.WriteLine("filtro: " + filtro); var app = new IgApplication(); return app.getInstrucoes(filtro); }
**E no angular se encontra dessa forma:**
return this._http.post<IgResult>(environment.url + 'api/IG', this.Filtro, options)
Ao debugar a API, percebo que os dados do parâmetro **body** chegam nulos. Já tentei das seguintes maneiras abaixo, mudar a implementação do POST na API porém sem sucesso:
> //public async Task<IActionResult> Post([FromBody] Filtro pessoa) > //public HttpResponseMessage Post(Filtro pessoa) > //public async Task<ActionResult<IList<Todo>>> Create([FromBody]TodoCreateViewModel model) > //public Task<IActionResult> Post([FromBody] Filtro filtro) > //public ActionResult<Filtro> Post([FromBody] Filtro filtro) > //public HttpResponseMessage Post(Filtro filtro) > //public string Post([FromBody] Filtro filtro) > //public IActionResult Post([FromBody] Filtro filtro) > //{ > //var app = new IgApplication(); > //return app.getInstrucoes(filtro); > //return null;// Json(filtro); > //} > //public async System.Threading.Tasks.Task<string> Post(HttpRequestMessage request) > //{ > // string body = await request.Content.ReadAsStringAsync(); > // return body; > //}
Por isso se possível, gostaria muito de contar com a colaboração de vocês.
Desde já muito obrigado!
Renato Neto
Curtir tópico
+ 0
Responder
Posts
12/02/2021
Brendon Pereira
Olá Renato, estou com o mesmo problema.
Conseguiu resolver?
Conseguiu resolver?
Responder
Clique aqui para fazer login e interagir na Comunidade :)