Objet objet intégré

ObjetHttpRequest

HttpRequest est une classe utilisée pour gérer les requêtes HTTP. Elle permet de créer des requêtes HTTP et d'interagir avec le serveur. Vous pouvez l'utiliser pour envoyer GET, POST et d'autres types de requêtes HTTP au serveur Web

Supposons que nous ayons un paramètre de requête avec le nom de la clé et que nous renvoyions différents résultats de traitement basés sur ce paramètre : si le paramètre est vide, renvoyez "Hello world !" ; si le paramètre est "fibjs", renvoyez "Bonjour fibjs !" ; sinon, retournez "Bonjour, tout le monde !".

Le code est implémenté comme suit :

1 2 3 4 5 6 7 8 9 10
const http = require('http'); var svr = new http.Server(8080, (req) => { var name = req.query.get('name'); var msg = name ? `Hello ${name}!` : 'Hello world!'; req.response.write(msg); }); svr.start();

Ici, nous utilisons req.queryce type Collection, qui représente les paramètres de requête dans l'URL de la requête HTTP.

Nous accédons à http://127.0.0.1:8080/?name=fibjs via le navigateur au programme de service et obtenons le contenu de la réponse du serveur Hello fibjs!.

relation d'héritage

Constructeur

HttpRequest

Constructeur HttpRequest, crée un nouvel objet HttpRequest

1
new HttpRequest();

constante

TEXT

Spécifiez le type de message 1, qui représente un type de texte

1
const HttpRequest.TEXT = 1;

BINARY

Spécifiez le type de message 2, représentant un type binaire

1
const HttpRequest.BINARY = 2;

propriétés des membres

response

HttpResponse,Obtenir l'objet du message de réponse

1
readonly HttpResponse HttpRequest.response;

method

Méthodes de requête de chaîne, de requête et d'ensemble

1
String HttpRequest.method;

address

Chaîne, requête et définition de l'adresse de la demande

1
String HttpRequest.address;

queryString

Chaîne, requête et définition de chaîne de requête de requête

1
String HttpRequest.queryString;

cookies

HttpCollection, récupérez le conteneur contenant les cookies de message

1
readonly HttpCollection HttpRequest.cookies;

form

HttpCollection, récupérez le conteneur contenant le formulaire de message

1
readonly HttpCollection HttpRequest.form;

query

HttpCollection, récupère le conteneur contenant la requête de message

1
readonly HttpCollection HttpRequest.query;

protocol

Chaîne, informations sur la version du protocole, le format autorisé est : HTTP/#.#

1
String HttpRequest.protocol;

headers

HttpCollection, inclus dans le messagehttpConteneur pour les en-têtes de message, propriété en lecture seule

1
readonly HttpCollection HttpRequest.headers;

keepAlive

Booléen, interroge et définit s'il faut maintenir la connexion

1
Boolean HttpRequest.keepAlive;

upgrade

Booléen, interroge et définit s'il s'agit d'un protocole de mise à niveau

1
Boolean HttpRequest.upgrade;

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 HttpRequest.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 HttpRequest.maxHeaderSize;

maxBodySize

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

1
Integer HttpRequest.maxBodySize;

socket

Stream, Interroger la socket source de l'objet actuel

1
readonly Stream HttpRequest.socket;

value

String, le contenu de base du message

1
String HttpRequest.value;

params

NArray, les paramètres de base du message

1
readonly NArray HttpRequest.params;

type

Entier, type de message

1
Integer HttpRequest.type;

data

Valeur, interroge les données du message. Cet attribut renverra des données différentes en fonction du type de contenu. Lorsqu'il s'agit de texte, le texte sera renvoyé.jsonrevenir quandjson, sinon il renvoie du binaire

1
readonly Value HttpRequest.data;

body

SeekableStream, un objet flux contenant la partie données du message

1
SeekableStream HttpRequest.body;

length

Long : la longueur de la partie des données du message

1
readonly Long HttpRequest.length;

stream

Stream, l'objet flux lors de l'interrogation du message readFrom

1
readonly Stream HttpRequest.stream;

lastError

Chaîne, interroge et définit la dernière erreur de traitement du message

1
String HttpRequest.lastError;

fonction membre

hasHeader

Vérifiez s'il existe un en-tête de message avec la valeur de clé spécifiée

1
Boolean HttpRequest.hasHeader(String name);

Paramètres d'appel :

  • name: String, spécifie la valeur clé à vérifier

Résultats de retour :

  • Boolean, renvoie si la valeur clé existe

firstHeader

Interroger le premier en-tête de message de la valeur de clé spécifiée

1
String HttpRequest.firstHeader(String name);

Paramètres d'appel :

  • name: String, spécifiez la valeur clé à interroger

Résultats de retour :

  • String, renvoie la valeur correspondant à la valeur clé, si elle n'existe pas, renvoie undéfini

allHeader

Interroger tous les en-têtes de message de la valeur de clé spécifiée

1
NObject HttpRequest.allHeader(String name = "");

Paramètres d'appel :

  • name: String, spécifiez la valeur clé à interroger, transmettez une chaîne vide pour renvoyer les résultats de toutes les valeurs clés

Résultats de retour :

  • NObject, renvoie un tableau de toutes les valeurs correspondant à la valeur clé. Si les données n'existent pas, renvoie null.

addHeader

Ajoutez un en-tête de message, ajoutez des données et ne modifiez pas l'en-tête de message de la valeur clé existante

1
HttpRequest.addHeader(Object map);

Paramètres d'appel :

  • map: Objet, spécifie le dictionnaire de données clé-valeur à ajouter

Ajoute un ensemble d'en-têtes avec le nom spécifié. L'ajout de données ne modifie pas les en-têtes des valeurs de clé existantes.

1 2
HttpRequest.addHeader(String name, Array values);

Paramètres d'appel :

  • name: String, spécifie la valeur clé à ajouter
  • values : Array, spécifie un ensemble de données à ajouter

Ajoutez un en-tête de message, ajoutez des données et ne modifiez pas l'en-tête de message de la valeur clé existante

1 2
HttpRequest.addHeader(String name, String value);

Paramètres d'appel :

  • name: String, spécifie la valeur clé à ajouter
  • value: String, spécifiez les données à ajouter

setHeader

Définir un en-tête de message. La définition des données modifiera la première valeur correspondant à la valeur clé et effacera les en-têtes de message restants avec la même valeur clé.

1
HttpRequest.setHeader(Object map);

Paramètres d'appel :

  • map: Objet, spécifie le dictionnaire de données clé-valeur à définir

Définissez un ensemble d'en-têtes de message avec le nom spécifié. La définition des données modifiera la valeur correspondant à la valeur de clé et effacera les en-têtes de message restants avec la même valeur de clé.

1 2
HttpRequest.setHeader(String name, Array values);

Paramètres d'appel :

  • name: String, spécifiez la valeur clé à définir
  • values : Array, spécifie un ensemble de données à définir

Définir un en-tête de message. La définition des données modifiera la première valeur correspondant à la valeur clé et effacera les en-têtes de message restants avec la même valeur clé.

1 2
HttpRequest.setHeader(String name, String value);

Paramètres d'appel :

  • name: String, spécifiez la valeur clé à définir
  • value: String, spécifiez les données à définir

removeHeader

Supprimer tous les en-têtes de message avec la valeur de clé spécifiée

1
HttpRequest.removeHeader(String name);

Paramètres d'appel :

  • name: String, spécifie la valeur clé à supprimer

read

Lit des données de taille spécifiée à partir du flux.Cette méthode est un alias de la méthode correspondante de body.

1
Buffer HttpRequest.read(Integer bytes = -1) async;

Paramètres d'appel :

  • bytes : Nombre entier, spécifie la quantité de données à lire. La valeur par défaut est de lire des blocs de données de taille aléatoire. La taille des données lues dépend de l'appareil.

Résultats de retour :

  • Buffer, renvoie les données lues à partir du flux. S'il n'y a aucune donnée à lire ou si la connexion est interrompue, null est renvoyé.

readAll

Lit toutes les données restantes du flux.Cette méthode est un alias de la méthode correspondante de body.

1
Buffer HttpRequest.readAll() async;

Résultats de retour :

  • Buffer, renvoie les données lues à partir du flux. S'il n'y a aucune donnée à lire ou si la connexion est interrompue, null est renvoyé.

write

Écrivez les données données.Cette méthode est un alias de la méthode correspondante dans le corps.

1
HttpRequest.write(Buffer data) async;

Paramètres d'appel :

  • data:Buffer, étant donné les données à écrire

json

Écrit les données données en codage JSON

1
Value HttpRequest.json(Value data);

Paramètres d'appel :

  • data: Valeur, compte tenu des données à écrire

Résultats de retour :

  • Value, cette méthode ne renvoie pas de données

Analyser les données du message sous forme d'encodage JSON

1
Value HttpRequest.json();

Résultats de retour :

  • Value, renvoie le résultat analysé

pack

parmsgpackL'encodage écrit les données données

1
Value HttpRequest.pack(Value data);

Paramètres d'appel :

  • data: Valeur, compte tenu des données à écrire

Résultats de retour :

  • Value, cette méthode ne renvoie pas de données

parmsgpackEncodage et analyse des données dans le message

1
Value HttpRequest.pack();

Résultats de retour :

  • Value, renvoie le résultat analysé

end

Définir la fin du traitement du message en cours,ChainLe processeur ne poursuit pas les transactions ultérieures

1
HttpRequest.end();

isEnded

Demander si le message en cours est terminé

1
Boolean HttpRequest.isEnded();

Résultats de retour :

  • Boolean, renvoie vrai une fois terminé

clear

Contenu clair du message

1
HttpRequest.clear();

sendTo

Envoie un message formaté à l'objet de flux donné

1
HttpRequest.sendTo(Stream stm) async;

Paramètres d'appel :

  • stm:Stream, spécifie l'objet de flux qui reçoit le message formaté

readFrom

Lit le message formaté à partir de l'objet de flux de cache donné et analyse l'objet renseigné

1
HttpRequest.readFrom(Stream stm) async;

Paramètres d'appel :

  • stm:Stream, spécifie l'objet de flux pour lire les messages formatés

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 HttpRequest.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 HttpRequest.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