如何在C++中优雅地解析请求(服务器端)的URI?
URI在卡萨布兰卡文件中定义为:
协议: //服务器:端口/路径?查询#片段
让我们说,我希望路径(包含所有元素)作为列表,查询作为键/值对的列表。
http://server/foo/bar?val1=1&val2=yo
会导致
std::list<string> path;
path.push_back("foo");
path.push_back("bar");
std::list<std::pair<string, string>> query;
query.push_back(std::make_pair("val1", "1"));
query.push_back(std::make_pair("val2", "yo"));我想避免像建议的其他地方那样自己进行解析,主要是出于可移植性和性能方面的原因。
cpp-netlib似乎还不是部分助推,我不想引入一个新的库。
卡萨布兰卡有一个URI对象,但我找不到任何解析或迭代器。
是否只有boost,c++,casablanca/cpprestsdk才能解决这个问题?
https://stackoverflow.com/questions/33805177
复制相似问题