HTTP

XBMC contains an HTTP-client with which you can add sources in all sections in the XBMC interface.

HTTP/HTTPS url format
XBMC supported normal http/https urls, additionally, it support optional options we called as 'protocol options' which user/addons can set so that xbmc can full simulate the browser operations with specified http request header values. http[s]://[username[:password]@]host[:port]/directory/file?a=b&c=d
 * normal http url format:

http[s]://[username[:password]@]host[:port]/directory/file?a=b&c=d|option1=value1&option2=value2
 * http url with 'protocol options':

XBMC Supported special http protocol options
which is required if your HTTP server uses any type of authentication other than basic (which is, in fact, unsafe unless used over HTTPS). E.g. if your HTTP server uses digest authentication, use. For maximum flexibility, use  or   (i.e. anything other than basic).
 * auth

when the media url is unseekable, addons can set  protocol options, then xbmc won't try to seek on that url. if you set it in frodo or earlier, it will add a http header ' ' in the http request, it's harmless.
 * seekable (13.0+ Gotham, since git bb79b32b)

Other http protocol options (they are all rfc defined http request headers)

 * Referer
 * User-Agent
 * Cookie
 * Encoding
 * any other http request headers defined in rfc.

For the meanings of these, see RFC 2616.

Source formatting
Formatting in sources.xml:

Example (if any variables are not needed, omit the required punctuation): the http protocol options can be set as mentioned in 1.1/1.2.