R50 167f2a6b058b0c136ae44a72c24861aa
Прикладное программирование

HTTP/2+1.1 server

Добавлено 13 мар 2021 в 19:50
wchttpserver
HTTP/2+1.1 server written with Lazarus (Free Pascal)


The project builds on fpWeb modules and extends them to increase functionality:


  1. Client management using cookies (saving and maintaining sessions).
  2. Saving information about clients and sessions in SQLite database.
  3. Saving information about the latest requests and saving logs in SQLite database.
  4. Multithreading preparation and execution of requests based on threads pools e.g. helpful classes to work with EventSources.
  5. Clients ranking based on clients frequency of requests.
  6. Built-in support for gzip and deflate compression methods.
  7. Ability to start the server both in HTTP/2 mode and in HTTP 1.1 mode.
  8. Modified OpenSSL modules (added necessary TLS extensions) to create and maintain HTTP/2 connections.
  9. Added the ability to save the master key and a random set of client
    data on the server-side (necessary for debugging TLS dumps using
    WireShark).
  10. Working both under Windows and Linux.
https://github.com/iLya2IK/wchttpserver
435613ca5a