2010-01-19 8 views
1

호스트 이름을 설정하기 전에 구성된 가상 호스트의 렌더링을 테스트하고 싶습니다.setRawHeader가 웹보기의 요소를 따르지 않습니다.

예 : DNS 항목 "otherNameOfMySite"가 존재하지 않지만 (아파치 가상 호스트가 설정되어있는 경우) mysite.com에있는 웹 페이지 "otherNameOfMySite"를보십시오.

내 코드 :

이미지와 같은 HTML 페이지의 다른 요소가있는 경우 헤더는, 메인 페이지에 대해서만 설정
webvhost = new QWebView(); 
QNetworkRequest * request = new QNetworkRequest(QUrl("http://mysite.com")); 
request->setRawHeader("Host","otherNameOfMySite"); 
webvhost->load(*request); 

,이 이미지의 다운로드 내가 구성된 헤더를 사용하지 않습니다. 제 경우에는 가능한 가상 호스트의 렌더링을 볼 수 없습니다.

이 헤더를 웹 페이지의 모든 요소와 함께 사용하도록 webview에 지시하려면 어떻게해야합니까?

감사합니다.

+1

호스트가 처음부터 올바른 html을 전송할 수없는 이유는 무엇입니까? 웹보기에서 다운로드하는 모든 요소에 대한 새로운 요청이있을 것입니다. –

+0

제 생각에 당신은 당신이 왜 그렇게하고 싶은지 정확하게 생각해야합니다. –

+0

어쩌면 더 나은 방법은 프록시를 설정하는 것입니다, 내가 시도합니다 ... – profy

답변

0
  1. 당신은 QNetworkAccessManager 클래스를 다시 구현해야 특히, 수동으로 모든 요청에 ​​대해 어떤 헤더를 설정할 수 있습니다 createRequest 기능.
  2. 이 다시 구현 된 클래스의 인스턴스를 만들고 webvhost->page()->setNetworkAccessManager(your_reimplemented_class)에 설정하십시오. 그래서 원하는 것을 얻을 수 있습니다.
관련 문제