title: Keep Node JS connection opened and write (GET Request)
body: <p>I was trying to implement a NODE JS get method where I could encode in the url parameters and send back responses like in Server Sent Events.
  For example, when I used:</p>
  
  <pre><code>curl -D- 'http://localhost:8030/update'
  </code></pre>
  
  <p>The server would return a message, and then keep the connection opened to return more messages (like Push).
  I was using require('connect'), I tried with require('express') but can't get it working.</p>
  
  <p>Here's part of my code:</p>
  
  <pre><code>var http        = require('http');
  var connect     = require('express');
  var app         = connect();
  
  app.use(bodyParser.urlencoded({ extended: false })) 
  .use(bodyParser.json()) // JSON
  .use(cors(corsOpts))
  .get('/update', updateMiddleware);
  
  var server = http.createServer(app);
  
  server.listen("twserver.alunos.dcc.fc.up.pt", 8030);
  
  function updateMiddleware(req, res) {
     res.setHeader('Connection', 'keep-alive');
     res.setHeader('Content-Type', 'text/event-stream');
     res.setHeader('Cache-Control', 'no-cache');
     res.writeHead(200);
     setTimeout(function() {
         res.write("this is an event");
         res.flushHeaders();
     }, 1000);
     setTimeout(function() {
         res.write("this is another event");
     }, 2000);
     // should print without ending
  }
  </code></pre>
  
  <p>EDIT: I found it was working, but only in chrome. In terminal, I only receive it after waiting a long time, and messages come like in chunks.</p>