#include "Http/ParsingQuery.h" #include Incart::CablesDatabase::ParsingQuery::ParsingQuery() { test(); } void Incart::CablesDatabase::ParsingQuery::test() { Uri("/path1/path2/path3.ext?argument1=value1&argument2=value2&argument3=value3#anchor1&anchor2&anchor3"); } void Incart::CablesDatabase::ParsingQuery::exe(QByteArray query) { QString str = query.data(); // разделяем на подстроки по \r\n QStringList list = str.split("\r\n"); // подстроки делим на слова QVector vec; for(QString obj : list) { #ifdef OLD_QT_VERSION vec << obj.split(" ", QString::SkipEmptyParts); #else vec << obj.split(" ", Qt::SkipEmptyParts); #endif } for(int i = 0; i2) { m_ext = list[list.size()-1]; } } void Incart::CablesDatabase::ParsingQuery::insertArgs(QString str) { QStringList lst = str.split("="); if(lst.size()==2) { m_args.insert(lst[0], lst[1]); } } void Incart::CablesDatabase::ParsingQuery::Args(QString args) { m_args.clear(); QString str; for(int i = 0; i < args.size(); i++) { if(args[i]=='&') { insertArgs(str); str.clear(); } else { str.append(args[i]); } } insertArgs(str); } void Incart::CablesDatabase::ParsingQuery::Anchors(QString anchors) { m_anchors.clear(); QString str; for(int i = 0; i