| 759 | } |
| 760 | |
| 761 | void parseParams(std::map<std::string, std::vector<std::string> > ¶ms, const std::string& text, size_t offset) { |
| 762 | std::vector<std::string> items = tokenize(text, "&", 0, false, offset); |
| 763 | |
| 764 | for (size_t i = 0; i < items.size(); i++) { |
| 765 | std::string& item = items[i]; |
| 766 | |
| 767 | std::string key, val; |
| 768 | |
| 769 | std::vector<std::string> t = tokenize(item, "=", 0, false); |
| 770 | if (t.size() > 1) { |
| 771 | key = t[0]; |
| 772 | val = t[1]; |
| 773 | } |
| 774 | else { |
| 775 | key = item; |
| 776 | val = ""; |
| 777 | } |
| 778 | |
| 779 | if (params.find(key) == params.end()) { |
| 780 | std::vector<std::string> tv; |
| 781 | params[key] = tv; |
| 782 | } |
| 783 | params[key].push_back(val); |
| 784 | |
| 785 | } |
| 786 | } |
| 787 | |
| 788 | void HTTPConnection::fillRequest(HTTPRequest& req) { |
| 789 | req.request = request; |