HTTP 요청을 가로 채기 위해 QTcpSocket을 사용하여 프록시로 작동하는 응용 프로그램이 있습니다. HTTPS에서도 작동하도록 확장하려고 시도하고 있지만 예상대로 작동하지 않는 것으로 보입니다. 응용 프로그램의 고유성으로 인해 QHttp를 사용할 수 없습니다.Qt4 QSslSocket 트리거 HTTP 406 응답 q
현재, 나는 다음과 같은있다 : 나는 QSslSocket를 사용하여 매우 유사 뭔가를 시도했습니다
serverConnection = new QTcpSocket();
serverConnection->setProxy(proxy);
serverConnection->connectToHost(url_hostname, url_port);
serverConnection->write(request.toAscii());
connect(serverConnection, SIGNAL(readyRead()), this, SLOT(readServerData()), Qt::DirectConnection);
을하지만, 불행히도 결과는 내가 기대했던 것이 아니다. 요청을 수행 할 QSslSocket를 사용
는serverSConnection = new QSslSocket();
serverSConnection->connectToHostEncrypted(url_hostname, url_port);
if (!serverSConnection->waitForEncrypted()) {
qDebug() << "waitForEncrypted failed";
}
serverSConnection->write(request.toAscii());
connect(serverSConnection, SIGNAL(readyRead()), this, SLOT(readSServerData()), Qt::DirectConnection);
트리거 나타납니다 HTTP/1.1 406 불가
내가 통해 보내고있다 요청이 다음의 라인을 따라 뭔가 같습니다
Received Request: "CONNECT www.somesslhost.com:443 HTTP/1.1
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.13) Gecko/2009080315 Ubuntu/9.04 (jaunty) Firefox/3.0.13
Proxy-Connection: keep-alive
Host: www.somesslhost.com
을
누락 된 QSslSocket을 사용하여 응용 프로그램을 통해 HTTPS 요청을 보내는 것에 특별한 것이 있습니까?
응용 프로그램이 대상 서버에서 보내는 요청 또는 브라우저가 응용 프로그램에 보내는 요청 중 마지막 조각입니까? –
마지막 스 니펫은 대상 서버에 보내는 요청입니다. – Michael