Estou tentando implementar o método post para enviar a minha ListaNegociações para o servidor local, mas estou tendo algumas dificuldades na implementação.
// Código implementado no HttpService.js - Acredito estar correto essa parte
post(url, dado) {
return new Promise((resolve, reject) => {
let xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-type", "application/json");
xhr.onreadystatechange = () => {
if (xhr.readyState == 4) {
if (xhr.status == 200) {
resolve(JSON.parse(xhr.responseText));
} else {
reject(xhr.responseText);
}
}
};
xhr.send(JSON.stringify(dado)); // JSON.stringify converts an object into a string (format JSON)
});
}
1) Em NegociacaoService.js criei o método enviaNegociacoes que deveria retornar na sua Promise um erro ou código para envio dos dados ao server. Estou na dúvida no que devo inserir como segundo parâmetro "dado". Imaginei que seria o objeto ListaNegociacoes ou uma variável negociacões. 2) Como implementar no meu "resolve" o código que deveria converter a minha ListaNegociacoes em um JSON (string), para ser enviado corretamente para o servidor local?
enviaNegociacoes(){
return new Promise((resolve, reject) => {
this._http
.post('negociacoes/semana', /*O QUE COLOCO AQUI?*/)
.then(negociacoes => {
resolve( /* CÓDIGO AQUI */)
})
.catch(erro => {
console.log(erro);
reject('Não foi possível enviar as negociações');
})
});
}
Como estou seguindo o padrão MVC, como devo instanciar corretamente a chamada do método enviaNegociacoes()?
enviaNegociacoes(){
let service = new NegociacaoService();
service.enviaNegociacoes();
}