/** Extract basic credentials from an HTTP \a request. * * Returns \b true if credentials were provider, \b false otherwise. */ bool QDjangoHttpController::getBasicAuth(const QDjangoHttpRequest &request, QString &username, QString &password) { QRegExp authRx("^Basic (.+)$"); const QString authHeader = request.header("Authorization"); if (authRx.exactMatch(authHeader)) { const QString authValue = QString::fromUtf8(QByteArray::fromBase64(authRx.cap(1).toAscii())); const QStringList bits = authValue.split(":"); if (bits.size() == 2 && !bits[0].isEmpty() && !bits[1].isEmpty()) { username = bits[0]; password = bits[1]; return true; } } return false; }
/** Extract basic credentials from an HTTP \a request. * * Returns \b true if credentials were provider, \b false otherwise. */ bool QDjangoHttpController::getBasicAuth(const QDjangoHttpRequest &request, QString &username, QString &password) { QRegExp authRx(QLatin1String("^Basic (.+)$")); const QString authHeader = request.meta(QLatin1String("HTTP_AUTHORIZATION")); if (authRx.exactMatch(authHeader)) { const QString authValue = QString::fromUtf8(QByteArray::fromBase64(authRx.cap(1).toLatin1())); const QStringList bits = authValue.split(QLatin1Char(':')); if (bits.size() == 2 && !bits[0].isEmpty() && !bits[1].isEmpty()) { username = bits[0]; password = bits[1]; return true; } } return false; }