Skip to content

Latest commit

 

History

History

uri

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

URI Parser

Overview

  • URI parser but not a full-featured one. It just splits parts of a url.
  • Internally, it does a single allocation but each part is represented as null
    terminated string, so it plays nicely with C string functions.

Usage

#include "sc_uri.h"

#include <stdio.h>


int main(int argc, char *argv[])
{
    struct sc_uri *uri;
    uri = sc_uri_create("http://user:[email protected]:8042/over/there?name=jane#doe");
    printf("%s \n", uri->str);       // prints "http://user:[email protected]:8042/over/there?name=jane#doe"
    printf("%s \n", uri->scheme);    // prints "http"
    printf("%s \n", uri->host);      // prints "any.com"
    printf("%s \n", uri->userinfo);  // prints "user:pass"
    printf("%s \n", uri->port);      // prints "8042"
    printf("%s \n", uri->path);      // prints "/over/there"
    printf("%s \n", uri->query);     // prints "name=jane"
    printf("%s \n", uri->fragment);  // prints "doe"

    sc_uri_destroy(uri);

    return 0;
}