У меня даже просто создание экземпляра класса сразу ошибку в errorString() пишет
QHttp http;
QMessageBox::information(this,"http test",http.errorString(),0);
кстати та же самая муть и у меня.
Это нормально, при конструировании QHttp в errorString заноситься строка UnknowError.
Не нужно на это обращать внимание.
Главное, не надо создавать объект QHttp на стеке, т.к. при выходе из области видимости (функции) этот объект будет разрушен, соответственно сразу будет получен сигнал finished.