What greyfox is getting is the body content of the initial server response. It is not following the redirect, which you will find in the Location: header of the response.

In the finished() signal you could check the QNetworkRequest::RedirectionTargetAttribute attribute and, if the return is valid, create a new request and get() it. You might want to test for redirect loops or endless redirects though.