Module module de base

Module http

Module de protocole de transfert hypertexte pour prendre en charge le traitement du protocole http, alias du module : https

Objet

Request

Créer un objet de requête http, voir HttpRequest

1
HttpRequest http.Request;

Response

Créez un objet de réponse http, voir HttpResponse

1
HttpResponse http.Response;

Créez un objet cookie http, voir HttpCookie

1
HttpCookie http.Cookie;

Server

Créer un serveur http, voir HttpServer

1
HttpServer http.Server;

Client

Créer un client http, voir HttpClient

1
HttpClient http.Client;

HttpsServer

Créer un serveur https, voir HttpsServer

1
HttpsServer http.HttpsServer;

Handler

Créez un objet gestionnaire de protocole http, voir HttpHandler

1
HttpHandler http.Handler;

Repeater

Créez un objet processeur de transfert de requête http, voir HttpRepeater

1
HttpRepeater http.Repeater;

Fonction statique

fileHandler

Créer un processeur de fichiers statiques http pour répondre aux messages http avec des fichiers statiques

1 2 3
static Handler http.fileHandler(String root, Object mimes = {}, Boolean autoIndex = false);

Paramètres d'appel :

  • root: chaîne, chemin racine du fichier
  • mimes: Objet, paramètres mime étendus
  • autoIndex : booléen, s'il faut prendre en charge la navigation dans les fichiers du catalogue, la valeur par défaut est false, non pris en charge

Résultat de retour :

  • Handler, Renvoie un processeur de fichier statique pour le traitement des messages http

fileHandler prend en charge la pré-compression gzip. Lorsque la requête accepte l'encodage gzip et que le fichier filename.ext.gz existe dans le même chemin, il renverra directement ce fichier, afin d'éviter la charge du serveur causée par une compression répétée.


setClientCert

Définir le certificat client par défaut

1 2
static http.setClientCert(X509Cert crt, PKey key);

Paramètres d'appel :

  • crt: X509Cert, Certificat, utilisé pour envoyer au serveur pour vérifier le client
  • key: PKey, Clé privée, utilisée pour parler au client

request

Envoyer une requête http à l'objet de flux spécifié et renvoyer le résultat

1 2
static HttpResponse http.request(Stream conn, HttpRequest req) async;

Paramètres d'appel :

Résultat de retour :


Envoyer une requête http à l'objet de flux spécifié et renvoyer le résultat

1 2 3
static HttpResponse http.request(Stream conn, HttpRequest req, SeekableStream response_body) async;

Paramètres d'appel :

Résultat de retour :


Demande spécifiée urlEt retourne le résultat

1 2 3
static HttpResponse http.request(String method, String url, Object opts = {}) async;

Paramètres d'appel :

  • method: chaîne, spécifiez la méthode de requête http : GET, POST, etc.
  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7 8
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {}, "response_body": SeekableStream //指定接受 resposne 数据的流 }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire


get

Utilisez la méthode GET pour demander le url, Et renvoie le résultat, qui équivaut à request("GET", ...)

1 2
static HttpResponse http.get(String url, Object opts = {}) async;

Paramètres d'appel :

  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {} }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire


post

Utilisez la méthode POST pour demander le url, Et renvoie le résultat, qui équivaut à request("POST", ...)

1 2
static HttpResponse http.post(String url, Object opts = {}) async;

Paramètres d'appel :

  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {} }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire


del

Utilisez la méthode DELETE pour demander le url, Et renvoie le résultat, qui équivaut à request("DELETE", ...)

1 2
static HttpResponse http.del(String url, Object opts = {}) async;

Paramètres d'appel :

  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {} }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire


put

Utilisez la méthode PUT pour demander le url, Et renvoie le résultat, qui équivaut à request("PUT", ...)

1 2
static HttpResponse http.put(String url, Object opts = {}) async;

Paramètres d'appel :

  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {} }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire


patch

Utilisez la méthode PATCH pour demander le url, Et renvoie le résultat, qui équivaut à request("PATCH", ...)

1 2
static HttpResponse http.patch(String url, Object opts = {}) async;

Paramètres d'appel :

  • url: chaîne, spécifiez url, Doit être le complet, y compris l'hôte url
  • opts: Objet, spécifiez des informations supplémentaires

Résultat de retour :

opts contient des options supplémentaires demandées, et le contenu pris en charge est le suivant :

1 2 3 4 5 6 7
{ "query": {}, "body": SeekableStream | Buffer | String | {}, "json": {}, "pack": {}, "headers": {} }

Où corps,json, Pack ne doit pas apparaître en même temps. La valeur par défaut est {}, ne contient aucune information supplémentaire

Propriétés statiques

STATUS_CODES

Array, renvoie une collection de codes d'état de réponse HTTP standard et une brève description de chacun.

1
static readonly Array http.STATUS_CODES;

cookies

NArray, renvoie le client http HttpCookie Liste d'objets

1
static readonly NArray http.cookies;

timeout

Entier, interroger et définir le délai d'expiration

1
static Integer http.timeout;

enableCookie

Booléen, commutateur de fonction de cookie, activé par défaut

1
static Boolean http.enableCookie;

autoRedirect

Booléen, commutateur de fonction de redirection automatique, activé par défaut

1
static Boolean http.autoRedirect;

enableEncoding

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

1
static Boolean http.enableEncoding;

maxBodySize

Entier, interrogez et définissez la taille maximale du corps, en Mo, la valeur par défaut est -1, et la taille n'est pas limitée

1
static Integer http.maxBodySize;

userAgent

Chaîne, requête et définition de l'ID du navigateur dans la requête http

1
static String http.userAgent;

poolSize

Entier, interroger et définir le nombre maximal de connexions de cache persistantes, la valeur par défaut est 128

1
static Integer http.poolSize;

poolTimeout

Entier, interrogez et définissez le délai d'expiration de la connexion au cache keep-alive, la valeur par défaut est 10000 ms

1
static Integer http.poolTimeout;

proxyAgent

Chaîne, requête et définition du serveur proxy

1
static String http.proxyAgent;