Skip to content

SWI-Prolog/packages-http

Folders and files

NameName
Last commit message
Last commit date

Latest commit

127a094 · Mar 20, 2025
Mar 17, 2025
Mar 28, 2022
Jan 4, 2019
Mar 19, 2025
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Feb 19, 2024
Dec 18, 2016
Jan 3, 2025
Jan 3, 2025
Dec 19, 2016
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Jul 3, 2023
Feb 28, 2024
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Jan 3, 2025
Mar 7, 2016
Jan 3, 2025
Sep 4, 2019
Jan 3, 2025
Jan 17, 2025
Dec 18, 2016
Jun 14, 2021
Apr 25, 2023
Apr 24, 2024
Apr 24, 2023
Jan 3, 2025
Jan 3, 2025
Mar 16, 2025
Jan 3, 2025
Jan 3, 2025
Dec 18, 2016
Jan 3, 2025
Mar 9, 2024
Dec 14, 2019
Dec 18, 2016
Mar 7, 2024
Jan 3, 2025
Dec 18, 2016
Jun 1, 2023
Jan 3, 2025
Mar 20, 2025
Jan 3, 2025
Jan 3, 2025
Mar 17, 2025
Nov 23, 2021
Jan 3, 2025
Feb 29, 2024
Feb 10, 2019
Jan 3, 2025
Jan 3, 2025
Feb 26, 2020
Jan 3, 2025
Mar 16, 2022
Nov 29, 2018
Mar 2, 2024
Mar 14, 2025
Dec 1, 2018
Jul 10, 2022
May 29, 2020
Mar 2, 2023
Dec 18, 2016
Mar 11, 2024
Sep 16, 2022
Dec 18, 2016
Jan 26, 2025
Aug 29, 2023
Mar 8, 2024
Jan 22, 2024

Repository files navigation

SWI-Prolog HTTP support library

This directory provides the SWI-Prolog libraries for accessing and providing HTTP services.

Client library

The main client library is library(http/http_open), which can open both HTTP and HTTPS connections and handle all request methods.

Server library

The main server libraries are

  • library(http/thread_httpd) implements the server
  • library(http/http_dispatch) implements binding locations predicates
  • library(http/http_unix_daemon) implements integration in various Unix server managers and in general provides a suitable entry point for HTTP servers on Unix.
  • library(http/html_write) implements generating HTML
  • library(http/http_json) implements reading and writing JSON documents.

For simplicity, you can use library(http/http_server), which combines the typical HTTP libraries that most servers need. The idea of a common request handling system and three controlling libraries is outdated; the threaded server now being the only sensible controlling library.

Requirements

This library uses functionality from the ssl package to support HTTPS, the sgml package to read XML/HTML and the clib package for various extensions.