Sample code for 30+ languages & platforms
C++

Parse a URL into its Component Parts

See more HTTP Examples

Demonstrates how to parse a URL into it's component parts.

Chilkat C++ Downloads

C++
#include <CkUrl.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkUrl url;

    const char *urlStr = "https://www.amazon.com/Anarchy-State-Utopia-Robert-Nozick/dp/0465051006/ref=sr_1_1?s=books&ie=UTF8&qid=1430344305&sr=1-1&keywords=nozick#frag123";

    success = url.ParseUrl(urlStr);
    //  Assume success..

    std::cout << "URL: " << urlStr << "\r\n";
    std::cout << "Host: " << url.host() << "\r\n";
    std::cout << "Port: " << url.get_Port() << "\r\n";
    std::cout << "HostType: " << url.hostType() << "\r\n";
    std::cout << "Ssl: " << url.get_Ssl() << "\r\n";
    std::cout << "Path: " << url.path() << "\r\n";
    std::cout << "Query: " << url.query() << "\r\n";
    std::cout << "Frag: " << url.frag() << "\r\n";
    std::cout << "----" << "\r\n";

    urlStr = "http://matt:secret@www.chilkatsoft.com:8080/somepath.asp?test=123&size=2";

    success = url.ParseUrl(urlStr);
    //  Assume success..

    std::cout << "URL: " << urlStr << "\r\n";
    std::cout << "Host: " << url.host() << "\r\n";
    std::cout << "Port: " << url.get_Port() << "\r\n";
    std::cout << "HostType: " << url.hostType() << "\r\n";
    std::cout << "Ssl: " << url.get_Ssl() << "\r\n";
    std::cout << "Login: " << url.login() << "\r\n";
    std::cout << "Password: " << url.password() << "\r\n";
    std::cout << "Path: " << url.path() << "\r\n";
    std::cout << "Query: " << url.query() << "\r\n";
    std::cout << "Frag: " << url.frag() << "\r\n";
    }