간단한 파일 다운로더를 만들려고합니다. 다음은 URL을 다운로드하기위한 코드 세그먼트입니다. "http://stackoverflow.com"과 같은 간단한 URL을 얻으려고하면이 코드가 제대로 작동합니다.
가으로 리디렉션되는 URL을 지정하면 "연결이 종료되었습니다"라는 오류가 발생합니다. 여기 QNetworkReply 오류 간단한 URL을 가져 오는 중 "연결이 닫혔습니다."
//Connects networkReply object's error signal to a slot which prints the error. connect(networkReply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(printError(QNetworkReply::NetworkError)));
가 networkReply의 에러 신호가 방출되는 경우, 에러를 출력 슬롯이다 :
//Sets a sample URL which redirects.
QString url = "http://downloads.sourceforge.net/project/gretl/gretl/1.9.92/gretl-1.9.92.tar.xz"
QNetworkAccessManager * networkAccessManager = new QNetworkAccessManager(this);
QNetworkRequest * networkRequest = new QNetworkRequest(QUrl(url));
//Getting the URL
QNetworkReply * networkReply = networkAccessManager->get(*networkRequest);
는 또한 I 네트워크 에러를 인식하는 다음 신호 슬롯을 연결 한
void printError(QNetworkReply::NetworkError code)
{
qDebug() << "Network Error Code: " << code;
qDebug() << networkReply->errorString();
}
이 오류로 인해 네트워크가 입니다. 회신 개체는 어떤 머리글도받지 못합니다.
내 필요는이 방법으로 HTTP 상태 코드를 읽는 것입니다 : 내가 헤더를하지 않기 때문에 QNetworkReply::attribute(QNetworkRequest::HttpStatusCodeAttribute)
나는 HTTP 상태 코드를 읽을 수 없습니다.
아무도 말할 수 있습니까?
미리 감사드립니다. :)
고맙습니다! 예제와 같이 사용자 에이전트를 설정하지 않았습니다. 사용자 에이전트를 지정할 때 작동합니다. 나는 내가 사용 도구를 가지고 있지 않다는 것을 알 때 서버가 연결을 끊는다고 생각한다. – Naveen