1
resposta

WebSockets nao funcionou

Quando cadastrei a promocao, a janela popup acionada pela funcao alert nao foi exibida. É como se nao tivesse configurado na pagina o codigo nao estivesse na pagina index.

Segue abaixo o meu codigo:

Pagina index

<script src="/socket.io/socket.io.js"></script>
<script>
    var socket = io();
    socket.on('novaPromocao', function(data){
        alert("Promocao "+data.livro.id);
    });
</script>

Modulo da rota de promocoes

module.exports = function(app) {
    app.get("/promocoes/form",function(req, res){
        var connection    = app.infra.connectionFactory();
           var produtosDAO = new app.infra.ProdutosDAO(connection);
        produtosDAO.lista(function(erro, resultados) {
            res.render("promocoes/form", {lista : resultados} );
           });
           connection.end();
    });
    app.post("/promocoes", function(req,res) {
        var promocao = req.body;

        app.get('io').emit("novaPromocao",promocao);
        res.redirect("/promocoes/form");
    });
}
1 resposta

Opa João, verifica se o navegador está resolvendo corretamente a importação do socket.io? Acho que pode estar com problemas lá. Abre o dev tools do seu navegador e verifica se ta tudo correto nas requisições da sua página.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software