HTTP: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
mNo edit summary
m (Text replacement - "{{mininav| Media sources | File sharing }}" to "{{mininav| File sharing }}")
(21 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{XBMC wiki toc}}
{{mininav| [[File sharing]] }}
XBMC contains an [[w:HTTP|HTTP]]-client with which you can add sources in all sections in the XBMC interface, however as HTTP (Hypertext Transfer Protocol ) is not designed to stream audio/video data it is not recommended that you use it under the [[Music]] or [[Videos]] sections.
<section begin="intro"/>Kodi contains an [[w:HTTP|HTTP]]-client with which you can add sources in all sections in the Kodi interface.<section end="intro"/>


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


Example (if any variables are not needed, omit the required punctuation):
* http url with 'protocol options':
<pre>
   http[s]://[username[:password]@]host[:port]/directory/file?a=b&c=d'''|option1=value1&option2=value2'''
   <source>
    <!--to connect as anonymous use "http://ipaddress:port/" or just "http://ipaddress"-->
    <path>http://username:password@ipaddress:port/directory/|option1=value1&option2=value2</path>
  </source>
</pre>


Examples of options include "auth", 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 <code><nowiki>http://username:password@host:port/directory/|auth=digest</nowiki></code>. For maximum flexibility, use <code>auth=any</code> or <code>auth=anysafe</code> (i.e. anything other than basic).
=== Kodi supported special http protocol options ===
* auth
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 <code><nowiki>http://username:password@host:port/directory/|auth=digest</nowiki></code>. For maximum flexibility, use <code>auth=any</code> or <code>auth=anysafe</code> (i.e. anything other than basic).


Other options include:
* seekable (13.0+ Gotham, since git bb79b32b)
when the media url is unseekable, addons can set <code>seekable=0</code> protocol options, then Kodi won't try to seek on that url.
if you set it in frodo or earlier, it will add a http header '<code>seekable: 0</code>' in the http request, it's harmless.
 
=== Other http protocol options (they are all rfc defined http request headers) ===
* Referer
* Referer
* User-Agent
* User-Agent
* Cookie
* Cookie
* Encoding
* Encoding
* any other http request headers defined in rfc.


For the meanings of these, see RFC 2616.
For the meanings of these, see RFC 2616.


[[Category:File Sharing]]
 
{{Helix updated}}
 
[[Category:File sharing]]
[[Category:Manual]]

Revision as of 23:27, 29 January 2021

Home icon grey.png   ▶ File sharing ▶ HTTP

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

HTTP/HTTPS url format

Kodi supported normal http/https urls, additionally, it support optional options we called as 'protocol options' which user/addons can set so that Kodi can full simulate the browser operations with specified http request header values.

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

Kodi supported special http protocol options

  • auth

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 http://username:password@host:port/directory/|auth=digest. For maximum flexibility, use auth=any or auth=anysafe (i.e. anything other than basic).

  • seekable (13.0+ Gotham, since git bb79b32b)

when the media url is unseekable, addons can set seekable=0 protocol options, then Kodi won't try to seek on that url. if you set it in frodo or earlier, it will add a http header 'seekable: 0' in the http request, it's harmless.

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.