Доступ к данным QNetworkRequest до их отправки

Есть ли способ увидеть данные, которые будут отправлены (или были отправлены) во время (или после) звонка QNetworkAccessManager::post(QNetworkRequest,QByteArray) на стороне клиента?

Другими словами, я хотел бы видеть необработанный HTTP-запрос полностью:

POST /somepage.php HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 19

name=need&just=tosee

6

Решение

Прошло некоторое время с тех пор, как мне пришлось отлаживать свои запросы, и, возможно, все изменилось в Qt, но мне пришлось обращаться к различным частям запросов, используя различные функции, чтобы получить все детали.

Я создал оболочку для функции post, которая распечатывает детали перед отправкой запроса. Вот фрагмент кода, который извлекает и печатает URL, необработанные заголовки и данные, например:

void debugRequest(QNetworkRequest request, QByteArray data = QByteArray())
{
...
qDebug() << request.url().toString();
const QList<QByteArray>& rawHeaderList(request.rawHeaderList());
foreach (QByteArray rawHeader, rawHeaderList) {
qDebug() << request.rawHeader(rawHeader);
}
qDebug() << data;
...
}
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]