Some clients will set Content-Length: 0 when there is no content (and shouldn't be, e.g. on a GET). This can cause other parts of connect to be confused. For instance, if the client also sets Content-Type: application/json, the json middleware will try to parse an empty string and blow up.
Of course, such clients are unhelpful at best, but connect should not blow up.