I've just spent lunch trying to understand this. What happens is when XMLHttpRequest
is used from Chrome to talk to a Node server, Node sometimes drops the request.
The Chrome investigation is covered here. It takes 52 comments before the Chrome guy to be able to reproduce the bug. And for most of that, I'm not convinced he's doing anything other than debugging niftylettuce's site. But the Chrome team remains professional throughout (although I bet there was steam let off behind the scenes).
The final solution is "Chrome sets the fin bit of the final non-empty data packet to true, which apparently triggers a bug in the server. Other browsers instead send a separate empty data packet with the fin bit set to true at the end of the request body." So node can't handle non-empty final data packets.