TsgcWebSocketServer_HTTPAPI

L'API du serveur HTTP permet aux applications de communiquer via HTTP sans utiliser Microsoft Internet Information Server (IIS).

Introduction

L'API du serveur HTTP permet aux applications de communiquer via HTTP sans utiliser Microsoft Internet Information Server (IIS). Les applications peuvent s'enregistrer pour recevoir des requêtes HTTP pour des URL particulières, recevoir des requêtes WebSocket et envoyer des réponses WebSocket. L'API du serveur HTTP inclut la prise en charge SSL afin que les applications puissent échanger des données sur des connexions HTTP sécurisées sans IIS. Elle est également conçue pour fonctionner avec les ports de complétion d'E/S.

 

Le serveur prend en charge les protocoles suivants :

 

 

Par défaut, ce composant requiert que votre application s'exécute en mode Administrateur pour l'enregistrement des URL. Si l'URL a déjà été enregistrée à l'aide d'un outil externe comme netsh, vous pouvez l'exécuter sans droits Administrateur, en désactivant la propriété BindingOptions.ConfigureSSLCertificate pour permettre le démarrage de l'application sans droits d'administrateur.

Définissez FastMM4/FastMM5 comme première unité de votre projet.

 

Suivez les étapes ci-dessous pour configurer ce composant :

 

1. Déposez un composant TsgcWebSocketServer_HTTPAPI dans le formulaire

 

2. Définissez l'adresse d'écoute et le port :

 


    Server.Host := '127.0.0.1';
    Server.Port := 80;

 

3. Définissez les spécifications autorisées ; par défaut, toutes les spécifications sont autorisées.

 

RFC6455 : est la spécification WebSocket standard et recommandée.

 

Hixie76 : c'est un brouillon et il est recommandé d'établir des connexions Hixie76 uniquement si vous souhaitez fournir un support aux anciens navigateurs comme Safari 4.2

 

5. Créez une procédure et définissez la propriété Active = true

 

Réservation d'URL

Le serveur HTTP.SYS utilise la réservation d'URL pour définir les points de terminaison URL qui seront utilisés par le serveur HTTP.SYS.

 

Réservation d'URL de base

 

C'est le mode simple le plus facile pour configurer le serveur ; il suffit de définir l'hôte et le port que le serveur HTTP.SYS gérera.

Exemple : si votre serveur fonctionne sur l'IP 127.0.0.1 et le port 80, définissez simplement les propriétés suivantes


    Server.Host := '127.0.0.1';
    Server.Port := 80;

 

Si le serveur s'exécute sur plusieurs adresses IP et que vous souhaitez vous lier à plusieurs adresses IP, utilisez la méthode NewBinding. Effacez d'abord la propriété Host et Bindings, puis utilisez la méthode NewBinding pour définir toutes les liaisons du serveur.


    Server.Host := '';
    Server.Bindings.Clear;
    Server.Bindings.NewBinding('127.0.0.1', 80, '');
    Server.Bindings.NewBinding('80.50.55.11', 80, '');

Si le serveur requiert des connexions SSL, procédez comme suit pour définir l'hôte et le port qui seront utilisés pour gérer les connexions SSL.


    Server.Host := '127.0.0.1';
    Server.Port := 443;
    Server.SSL := True;
    Server.SSLOptions.Hash := 'CERTIFICATE_HASH';

Si le serveur requiert des connexions SSL avec plusieurs adresses IP, effacez d'abord les propriétés Host et Bindings, puis enregistrez les nouveaux Bindings.


    Server.Host := '';
    Server.Bindings.Clear;
    Server.Bindings.NewBinding('127.0.0.1', 443, '', true, 'CERTIFICATE_HASH1');
    Server.Bindings.NewBinding('80.50.55.11', 443, '', true, 'CERTIFICATE_HASH2');

Référence

Guides