Olá estou tentando consumir minha própria API porém o header dela tem o Content-Type:application/x-www-form-urlencoded e estou tento problemas para fazer o post, alguém pode me explicar como deve ser o post nesse caso?
Olá estou tentando consumir minha própria API porém o header dela tem o Content-Type:application/x-www-form-urlencoded e estou tento problemas para fazer o post, alguém pode me explicar como deve ser o post nesse caso?
Oi Hugo, tudo bem?
Para realizar um POST em uma API com o header Content-Type: application/x-www-form-urlencoded, você precisa enviar os dados em um formato específico. Esse formato consiste em uma string com os pares chave-valor separados por "&".
Por exemplo, se você quiser enviar as informações "nome" e "email", sua string deve ficar assim: "nome=fulano&email=fulano@exemplo.com".
Para enviar esses dados, você pode utilizar a classe HttpParams do Angular. Veja um exemplo de como ficaria o código:
const body = new HttpParams()
.set('nome', 'fulano')
.set('email', 'fulano@exemplo.com');
this.http.post('sua-url-aqui', body.toString(), {
headers: new HttpHeaders()
.set('Content-Type', 'application/x-www-form-urlencoded')
}).subscribe(res => {
console.log(res);
});
Espero ter ajudado.
Um abraço e bons estudos.