Better HTTP request checking and errors