2
respostas

[Bug] Erro ao realizar teste de POST com o Postman

Quando realizo o post seguindo oq foi abordado na video aula, tenho alguns erros que não me permite realiza-lo independentemente do localhost utilizado (http ou https), e aponta que a senha está nula ainda que, ao debugar no código, não esteja.

Poderiam me ajudar nisso?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Olá, Mariana.

Tudo bem?

Pelo erro apresentado na imagem do Postman e pela descrição do seu problema, parece que há uma desconexão entre o que você está enviando através do Postman e o que o seu controlador está esperando receber.

O erro System.ArgumentNullException: Value cannot be null. (Parameter 'password') sugere que, embora a senha esteja sendo enviada no body da requisição, ela não está sendo capturada corretamente pelo método no controlador. Isso pode acontecer por alguns motivos, mas vamos verificar alguns pontos que podem ajudar a resolver:

  1. Verifique a Model CreateUsuarioDto: Certifique-se de que a model CreateUsuarioDto está corretamente configurada para receber os dados que você está enviando. As propriedades na model devem ter os mesmos nomes e tipos que os dados no JSON enviado pelo Postman.

  2. Confira o Binding no Método do Controlador: No método CadastraUsuario do seu controlador, verifique se está utilizando corretamente o atributo [FromBody] para indicar que os dados devem ser vinculados a partir do corpo da requisição. Por exemplo:

    [HttpPost]
    public async Task<IActionResult> CadastraUsuario([FromBody] CreateUsuarioDto dto)
    {
        // seu código
    }
    
  3. Verifique a Serialização JSON: Certifique-se de que o JSON enviado está corretamente formatado. No seu caso, o JSON parece correto, mas é sempre bom revisar se não há espaços ou caracteres extras que possam estar causando o problema.

  4. Confira o Content-Type: No Postman, verifique se o header Content-Type está definido como application/json. Isso é crucial para que o ASP.NET Core possa interpretar corretamente o corpo da requisição como JSON.

  5. Depuração: Se possível, coloque pontos de interrupção no início do método CadastraUsuario para verificar se todos os valores estão sendo recebidos corretamente.

Se após essas verificações o problema persistir, seria interessante compartilhar mais detalhes do seu projeto, como o código fonte, assim conseguiremos elaborar uma resposta mais assertiva.

Espero que essas dicas ajudem a resolver o problema! Bons estudos!

Olá boa tarde, tudo bom?

a minha aplicação também estava dando erro mas identifiquei que era por causa do (protected override voie OnModelCreating(ModelBuilder modelBuilder)) conforme imagem abaixo.

Somente queria entender porque ele estava dando erro esse é o erro que ele apresentava


Insira aqui a descrição dessa imagem para ajudar na acessibilidade


Insira aqui a descrição dessa imagem para ajudar na acessibilidade também identifiquei que se eu colocar o (base.OnModelCreating(builder)) ele funciona certinho Insira aqui a descrição dessa imagem para ajudar na acessibilidade