2016-04-01 19 views
3

httpsリクエストを実行するためにQNetworkRequestを使用しています。私はそれをデバッグし、httpsサーバに送信される前に、このクラスによって構築されたhttpヘッダのすべての内容を見たいと思います。QNetworkRequestを使用して送信されたリクエストのHTTPヘッダーの生のバイトデータを取得する方法

は、これまでのところ、私はこれを行う:

QString header_list; 
QList<QByteArray> headerList = request->rawHeaderList(); 
foreach(QByteArray head, headerList) 
    header_list += head + ": " + request->rawHeader(head) + "\n"; 

これは私が明示的にsetRawHeaderを使用して設定ヘッダのすべての部分を含む文字列になり、それがデフォルトまたはクラスによって追加された値は表示されません。私自身の介入なしに

通常、私のアプリケーションがサーバーに送信しようとしているものを見るにはtcpdumpを使用しますが、SSLを使用しているため表示できません。

実際に出てくる「実際の」ヘッダーを実際に見たいと思っています。これは、何らかの理由でクラス内に隠れています。

私はどのようなHTTPヘッダーが私のアプリケーションを使用しているかを見ることができるので、それを取得する簡単な方法はありますか?

答えて

3

HTTPヘッダーはdeep inside Qtネットワークモジュールに設定されています。あなたはそれらを得ることができません。 以下のデフォルトヘッダー:

Content-Length: 42 // if there is outgoing data 
Proxy-Connection: Keep-Alive // if there is http proxy 
Connection: Keep-Alive 
Accept-Encoding: gzip, deflate 
Accept-Language: ru-RU,en,* // depend on system locale 
User-Agent: Mozilla/5.0 
Host: www.google.com 
Content-Type: application/x-www-form-urlencoded // if there is outgoing data, depend on data type 
関連する問題