std::string Downloader::map_to_query(const KeyValues &key_values) { if (key_values.size() == 0) { return std::string(); } std::stringstream ss; for (KeyValues::const_iterator iter = key_values.begin(); iter != key_values.end(); ++iter) { ss << iter->first << "=" << iter->second << "&"; } const std::string &temp = ss.str(); return std::string(temp.begin(), temp.begin() + temp.size() - 1); }