Есть ли способ увидеть данные, которые будут отправлены (или были отправлены) во время (или после) звонка 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
Прошло некоторое время с тех пор, как мне пришлось отлаживать свои запросы, и, возможно, все изменилось в 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;
...
}
Других решений пока нет …