Objet objet intégré

ObjetHttpsServeur

HttpsServer est un objet utilisé pour créer un serveur https. L'objet HttpsServer peut être utiliséHttpServerToutes les fonctions et propriétés de l'interface. L'objet HttpsServer peut être créé en passant l'objet certificat précédemment généré à l'aide d'openssl (X509Certtype) et l'objet clé (PKeytype), fournissant ainsi au clientsslServices protégés cryptographiquement

L'objet serveur https est leSslServeretHttpHandlerLa combinaison d'objets encapsulés permet de construire facilement et rapidement un serveur, ce qui équivaut logiquement à :

1 2 3
var svr = new net.SslServer(crt, key, addr, port, new http.Handler(function(req) { ... }));

Voici un exemple de code utilisant HttpsServer :

1 2 3 4 5 6 7 8 9 10 11 12
const http = require("http"); const crypto = require("crypto"); // load cert and key const cert = crypto.loadCert("server.crt"); const key = crypto.loadPKey("server.key"); // create https server const server = new http.HttpsServer(cert, key, 8443, function(req) { resp.response.write(`Hello, Fibjs!`); }); server.start();

Dans l'exemple ci-dessus, nous avons chargé un fichier de certificat et de clé privée nommé "server.crt" et "server.key", puis créé un service à l'aide de l'objet HttpsServer et démarré le service en écoute sur le port 8443. Lorsque le client Lorsque le client accède au service via " https://localhost:8443/ ", il peut recevoirsslProtection cryptée.

Il convient de noter que si un accès externe est requis, vous devez vous assurer que le certificat est émis par une agence de confiance publique, sinon le client ne pourra pas le vérifier, ce qui réduira les performances et la sécurité et pourrait déclencher un avertissement de sécurité.

relation d'héritage

Constructeur

HttpsServer

Constructeur HttpsServer, écoute sur toutes les adresses locales

1 2 3
new HttpsServer(Array certs, Integer port, Handler hdlr);

Paramètres d'appel :

  • certs: Tableau, liste des certificats du serveur
  • port: Entier, spécifiéhttpPort d'écoute du serveur
  • hdlr:Handler,httpProcesseur de messages intégré, fonction de traitement, tableau de traitement en chaîne, objet de routage, voir pour plus de détails

Le format des certificats est :

1 2 3 4 5 6 7 8 9 10 11
[{ name: "fibjs.org", crt: [X509Cert object], key: [PKey object] }, { name: "*.fibjs.org", crt: [X509Cert object], key: [PKey object] } ]

Constructeur HttpsServer

1 2 3 4
new HttpsServer(Array certs, String addr, Integer port, Handler hdlr);

Paramètres d'appel :

  • certs: Tableau, liste des certificats du serveur
  • addr: Chaîne, précisezhttpAdresse d'écoute du serveur, si elle est "", il écoutera sur toutes les adresses de la machine locale.
  • port: Entier, spécifiéhttpPort d'écoute du serveur
  • hdlr:Handler,httpProcesseur de messages intégré, fonction de traitement, tableau de traitement en chaîne, objet de routage, voir pour plus de détails

Le format des certificats est :

1 2 3 4 5 6 7 8 9 10 11
[{ name: "fibjs.org", crt: [X509Cert object], key: [PKey object] }, { name: "*.fibjs.org", crt: [X509Cert object], key: [PKey object] } ]

Constructeur HttpsServer, écoute sur toutes les adresses locales

1 2 3 4
new HttpsServer(X509Cert crt, PKey key, Integer port, Handler hdlr);

Paramètres d'appel :

  • crt:X509Cert,X509CertCertificat, utilisé par les clients pour authentifier les serveurs
  • key:PKey,PKeyClé privée, utilisée pour parler au client
  • port: Entier, spécifiéhttpPort d'écoute du serveur
  • hdlr:Handler,httpProcesseur de messages intégré, fonction de traitement, tableau de traitement en chaîne, objet de routage, voir pour plus de détails

Constructeur HttpsServer

1 2 3 4 5
new HttpsServer(X509Cert crt, PKey key, String addr, Integer port, Handler hdlr);

Paramètres d'appel :

  • crt:X509Cert,X509CertCertificat, utilisé par les clients pour authentifier les serveurs
  • key:PKey,PKeyClé privée, utilisée pour parler au client
  • addr: Chaîne, précisezhttpAdresse d'écoute du serveur, si elle est "", il écoutera sur toutes les adresses de la machine locale.
  • port: Entier, spécifiéhttpPort d'écoute du serveur
  • hdlr:Handler,httpProcesseur de messages intégré, fonction de traitement, tableau de traitement en chaîne, objet de routage, voir pour plus de détails

propriétés des membres

verification

Nombre entier, définissez le mode de vérification du certificat, la valeur par défaut est VERIFY_NONE

1
Integer HttpsServer.verification;

ca

X509Cert, vérification du certificat client ca

1
readonly X509Cert HttpsServer.ca;

maxHeadersCount

Entier, interrogez et définissez le nombre maximum d'en-têtes de requête, la valeur par défaut est 128

1
Integer HttpsServer.maxHeadersCount;

maxHeaderSize

Entier, interrogez et définissez la longueur maximale de l'en-tête de requête, la valeur par défaut est 8192

1
Integer HttpsServer.maxHeaderSize;

maxBodySize

Entier, interrogez et définissez la taille maximale du corps en Mo, la valeur par défaut est 64

1
Integer HttpsServer.maxBodySize;

enableEncoding

Booléen, commutateur de fonction de décompression automatique, désactivé par défaut

1
Boolean HttpsServer.enableEncoding;

serverName

Chaîne, interrogez et définissez le nom du serveur, la valeur par défaut est : fibjs/0.x.0

1
String HttpsServer.serverName;

socket

Socket, le serveur écoute actuellementSocketobjet

1
readonly Socket HttpsServer.socket;

handler

Handler, l'objet d'interface de traitement des événements actuels du serveur

1
Handler HttpsServer.handler;

fonction membre

enableCrossOrigin

Autoriser les requêtes inter-domaines

1
HttpsServer.enableCrossOrigin(String allowHeaders = "Content-Type");

Paramètres d'appel :

  • allowHeaders: Chaîne, spécifiée pour être acceptéehttpchamp d'en-tête

start

Démarrer le serveur actuel

1
HttpsServer.start();

stop

Fermez le socket pour abandonner le serveur en cours d'exécution

1
HttpsServer.stop() async;

toString

Renvoie la représentation sous forme de chaîne de l'objet. Généralement, "[Native Object]" est renvoyé. L'objet peut être réimplémenté en fonction de ses propres caractéristiques.

1
String HttpsServer.toString();

Résultats de retour :

  • String, renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie une représentation au format JSON de l'objet, renvoyant généralement une collection de propriétés lisibles définies par l'objet.

1
Value HttpsServer.toJSON(String key = "");

Paramètres d'appel :

  • key: Chaîne, non utilisée

Résultats de retour :

  • Value, renvoie une valeur contenant du JSON sérialisable