クロスプラットフォーム C アプリケーションでは、プロトコル、ホスト、パス、クエリなどの情報を得るために URL を解析する必要が頻繁にあります。が生じます。このタスクは頻繁に行われているにもかかわらず、Boost や POCO などの一般的に使用されるライブラリで包括的なソリューションを見つけるのは驚くほど難しい場合があります。
徹底的に検索した結果、Boost インクルード パイプラインに特別なライブラリが含まれていることが判明しました。 HTTP URI を解析するために設計されています。 Boost Software License で利用可能な cpp-netlib は、Boost.Spirit を採用し、URL コンポーネントを解析するための簡単なメカニズムを提供します。
このライブラリを利用するには、次の名前空間を含めるだけです:
<code class="cpp">using namespace boost::network::http;</code>
URL 解析の主なタイプは uri で、これは特定のコンポーネントにアクセスするための便利なメンバー関数を幅広く提供します。例:
<code class="cpp">uri u("http://www.example.com/path/to/resource?key=value"); std::string protocol = u.scheme(); std::string host = u.host(); std::string path = u.path(); std::string query = u.query();</code>
これらのメソッドを使用すると、開発者は URL を簡単に分解でき、複数のプラットフォームにわたる C アプリケーションでこの共通のタスクを簡単に行うことができます。
以上がクロスプラットフォーム C アプリケーションで URL を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。