diff --git a/src/webui/api/apicontroller.cpp b/src/webui/api/apicontroller.cpp index 40de8dcdf..140ade32d 100644 --- a/src/webui/api/apicontroller.cpp +++ b/src/webui/api/apicontroller.cpp @@ -28,6 +28,8 @@ #include "apicontroller.h" +#include + #include #include @@ -69,9 +71,13 @@ const DataMap &APIController::data() const void APIController::checkParams(const QSet &requiredParams) const { - const QSet params {this->params().keys().toSet()}; + const bool hasAllRequiredParams = std::all_of(requiredParams.cbegin(), requiredParams.cend() + , [this](const QString &requiredParam) + { + return params().contains(requiredParam); + }); - if (!params.contains(requiredParams)) + if (!hasAllRequiredParams) throw APIError(APIErrorType::BadParams); }