Browse Source

Merge pull request #10458 from Chocobo1/post

Correctly handle '+' sign in x-www-form-urlencoded data
adaptive-webui-19844
Mike Tzou 6 years ago committed by GitHub
parent
commit
4a02922bfb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      src/base/http/requestparser.cpp

5
src/base/http/requestparser.cpp

@ -205,7 +205,10 @@ bool RequestParser::parsePostMessage(const QByteArray &data)
// application/x-www-form-urlencoded // application/x-www-form-urlencoded
if (contentTypeLower.startsWith(CONTENT_TYPE_FORM_ENCODED)) { if (contentTypeLower.startsWith(CONTENT_TYPE_FORM_ENCODED)) {
QListIterator<QStringPair> i(QUrlQuery(data).queryItems(QUrl::FullyDecoded)); // [URL Standard] 5.1 application/x-www-form-urlencoded parsing
const QByteArray processedData = QByteArray(data).replace('+', ' ');
QListIterator<QStringPair> i(QUrlQuery(processedData).queryItems(QUrl::FullyDecoded));
while (i.hasNext()) { while (i.hasNext()) {
const QStringPair pair = i.next(); const QStringPair pair = i.next();
m_request.posts[pair.first] = pair.second; m_request.posts[pair.first] = pair.second;

Loading…
Cancel
Save