Oggetto oggetto incorporato

oggettoHttpRequest

HttpRequest è una classe utilizzata per gestire le richieste HTTP, che consente di creare richieste HTTP e interagire con il server. Puoi usarlo per inviare GET, POST e altri tipi di richieste HTTP al server web

Supponiamo di avere un parametro di query la cui chiave è name, restituiamo risultati di elaborazione diversi in base a questo parametro: se il parametro è vuoto, restituisce "Hello world!"; se il parametro è "fibjs", restituisce "Hello fibjs!"; altrimenti return "Ciao qualcuno!".

Il codice è implementato come segue:

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();

Qui utilizziamo req.queryquesto tipo di raccolta, che rappresenta i parametri della query nell'URL della richiesta HTTP.

Accediamo http://127.0.0.1:8080/?name=fibjs al programma di servizio tramite il browser per ottenere il contenuto della risposta del server Hello fibjs!.

rapporto ereditario

Costruttore

HttpRequest

Costruttore HttpRequest, crea un nuovo oggetto HttpRequest

1
new HttpRequest();

costante

TEXT

Specificare il tipo di messaggio 1, che rappresenta un tipo di testo

1
const HttpRequest.TEXT = 1;

BINARY

Specificare il tipo di messaggio 2, che rappresenta un tipo binario

1
const HttpRequest.BINARY = 2;

attributo membro

response

HttpResponse, ottenere l'oggetto del messaggio di risposta

1
readonly HttpResponse HttpRequest.response;

method

Stringa, query e metodi di richiesta set

1
String HttpRequest.method;

address

Stringa, interroga e imposta l'indirizzo della richiesta

1
String HttpRequest.address;

queryString

Stringa, query e stringa di query set request

1
String HttpRequest.queryString;

cookies

HttpCollection, ottenere il contenitore contenente i cookie dei messaggi

1
readonly HttpCollection HttpRequest.cookies;

form

HttpCollection, ottenere il contenitore contenente il modulo del messaggio

1
readonly HttpCollection HttpRequest.form;

query

HttpCollection, ottenere il contenitore contenente la query del messaggio

1
readonly HttpCollection HttpRequest.query;

protocol

Stringa, informazioni sulla versione del protocollo, il formato consentito è: HTTP/#.#

1
String HttpRequest.protocol;

headers

HttpCollection, contenuto nel messaggiohttpContenitore per le intestazioni dei messaggi, proprietà di sola lettura

1
readonly HttpCollection HttpRequest.headers;

keepAlive

Booleano, interroga e imposta se mantenere la connessione

1
Boolean HttpRequest.keepAlive;

upgrade

Booleano, interroga e imposta se si tratta di un accordo di aggiornamento

1
Boolean HttpRequest.upgrade;

maxHeadersCount

Integer, query e imposta il numero massimo di intestazioni di richiesta, il valore predefinito è 128

1
Integer HttpRequest.maxHeadersCount;

maxBodySize

Numero intero, query e imposta la dimensione massima del corpo, in MB, il valore predefinito è 64

1
Integer HttpRequest.maxBodySize;

socket

Stream, eseguire una query sul socket di origine dell'oggetto corrente

1
readonly Stream HttpRequest.socket;

value

String, il contenuto di base del messaggio

1
String HttpRequest.value;

params

NArray, i parametri di base del messaggio

1
readonly NArray HttpRequest.params;

type

Numero intero, tipo di messaggio

1
Integer HttpRequest.type;

data

Value, i dati del messaggio di query, questo attributo restituirà dati diversi in base al tipo di contenuto, quando è testo, restituirà il testo, che èjsontorna quandojson, altrimenti restituisce binario

1
readonly Value HttpRequest.data;

body

SeekableStream, un oggetto stream contenente la parte dei dati del messaggio

1
SeekableStream HttpRequest.body;

length

Long, la lunghezza della parte dati del messaggio

1
readonly Long HttpRequest.length;

stream

Stream, l'oggetto flusso quando si esegue una query sul messaggio readFrom

1
readonly Stream HttpRequest.stream;

lastError

Stringa, interroga e imposta l'elaborazione del messaggio dell'ultimo errore

1
String HttpRequest.lastError;

funzione membro

hasHeader

Controlla se c'è un'intestazione del messaggio con il valore chiave specificato

1
Boolean HttpRequest.hasHeader(String name);

Parametri di chiamata:

  • name: String, specifica il valore della chiave da verificare

risultato di ritorno:

  • Boolean, restituisce se la chiave esiste

firstHeader

Interroga la prima intestazione del messaggio del valore chiave specificato

1
String HttpRequest.firstHeader(String name);

Parametri di chiamata:

  • name: String, specifica il valore della chiave da interrogare

risultato di ritorno:

  • String, restituisce il valore corrispondente al valore della chiave o undefined se non esiste

allHeader

Interroga tutte le intestazioni di messaggio del valore di chiave specificato

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

Parametri di chiamata:

  • name: String, specifica il valore della chiave da interrogare, passando una stringa vuota restituisce il risultato di tutti i valori della chiave

risultato di ritorno:

  • NObject, restituisce un array di tutti i valori corrispondenti al valore della chiave o restituisce null se i dati non esistono

addHeader

Aggiungi un'intestazione del messaggio, l'aggiunta di dati non modifica l'intestazione del valore chiave esistente

1
HttpRequest.addHeader(Object map);

Parametri di chiamata:

  • map: oggetto, specifica il dizionario dati valore-chiave da aggiungere

Aggiungi una serie di intestazioni di messaggio con il nome specificato, l'aggiunta di dati non modifica le intestazioni esistenti dei valori chiave

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

Parametri di chiamata:

  • name: String, specifica il valore della chiave da aggiungere
  • values: Array, specifica un set di dati da aggiungere

Aggiungi un'intestazione del messaggio, l'aggiunta di dati non modifica l'intestazione del valore chiave esistente

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

Parametri di chiamata:

  • name: String, specifica il valore della chiave da aggiungere
  • value: String, specifica i dati da aggiungere

setHeader

Imposta un'intestazione del messaggio, l'impostazione dei dati modificherà il primo valore corrispondente al valore della chiave e cancellerà il resto delle intestazioni del messaggio con lo stesso valore della chiave

1
HttpRequest.setHeader(Object map);

Parametri di chiamata:

  • map: Object, specifica il dizionario dati valore-chiave da impostare

Imposta un gruppo di intestazioni del messaggio con il nome specificato, l'impostazione dei dati modificherà il valore corrispondente al valore della chiave e cancellerà il resto delle intestazioni del messaggio con lo stesso valore della chiave

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

Parametri di chiamata:

  • name: String, specifica il valore della chiave da impostare
  • values: Array, specifica un set di dati da impostare

Imposta un'intestazione del messaggio, l'impostazione dei dati modificherà il primo valore corrispondente al valore della chiave e cancellerà il resto delle intestazioni del messaggio con lo stesso valore della chiave

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

Parametri di chiamata:

  • name: String, specifica il valore della chiave da impostare
  • value: String, specifica i dati da impostare

removeHeader

Elimina tutte le intestazioni di messaggio del valore chiave specificato

1
HttpRequest.removeHeader(String name);

Parametri di chiamata:

  • name: String, specifica il valore della chiave da eliminare

read

Legge dati di dimensioni specificate dal flusso, questo metodo è un alias del metodo corrispondente di body

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

Parametri di chiamata:

  • bytes: Numero intero, specifica la quantità di dati da leggere, l'impostazione predefinita è leggere blocchi di dati di dimensioni casuali, la dimensione dei dati letti dipende dal dispositivo

risultato di ritorno:

  • Buffer, restituisce i dati letti dal flusso oppure null se non ci sono dati da leggere o la connessione è interrotta

readAll

Leggi tutti i dati rimanenti dal flusso, questo metodo è un alias del metodo corrispondente di body

1
Buffer HttpRequest.readAll() async;

risultato di ritorno:

  • Buffer, restituisce i dati letti dal flusso oppure null se non ci sono dati da leggere o la connessione è interrotta

write

Scrivi i dati forniti, questo metodo è un alias del metodo corrispondente di body

1
HttpRequest.write(Buffer data) async;

Parametri di chiamata:

  • data:Buffer, dati i dati da scrivere

json

Scrivi i dati forniti nella codifica JSON

1
Value HttpRequest.json(Value data);

Parametri di chiamata:

  • data: Valore, dati i dati da scrivere

risultato di ritorno:

  • Value, questo metodo non restituirà dati

Analizza i dati nel messaggio nella codifica JSON

1
Value HttpRequest.json();

risultato di ritorno:

  • Value, restituisce il risultato analizzato

pack

dimsgpackEncode scrive i dati dati

1
Value HttpRequest.pack(Value data);

Parametri di chiamata:

  • data: Valore, dati i dati da scrivere

risultato di ritorno:

  • Value, questo metodo non restituirà dati

dimsgpackCodifica i dati nel messaggio analizzato

1
Value HttpRequest.pack();

risultato di ritorno:

  • Value, restituisce il risultato analizzato

end

Imposta la fine dell'elaborazione del messaggio corrente,ChainIl processore non continua le transazioni successive

1
HttpRequest.end();

isEnded

Interroga se il messaggio corrente è terminato

1
Boolean HttpRequest.isEnded();

risultato di ritorno:

  • Boolean, restituisce true al termine

clear

Cancella il contenuto del messaggio

1
HttpRequest.clear();

sendTo

inviare un messaggio formattato all'oggetto flusso specificato

1
HttpRequest.sendTo(Stream stm) async;

Parametri di chiamata:

  • stm:Stream, specifica l'oggetto flusso che riceve il messaggio formattato

readFrom

Legge un messaggio formattato dall'oggetto flusso memorizzato nella cache specificato e analizza l'oggetto popolato

1
HttpRequest.readFrom(Stream stm) async;

Parametri di chiamata:

  • stm:Stream, specifica l'oggetto stream per la lettura dei messaggi formattati

toString

Restituisce la rappresentazione in stringa dell'oggetto, generalmente restituisce "[Native Object]", l'oggetto può essere reimplementato secondo le proprie caratteristiche

1
String HttpRequest.toString();

risultato di ritorno:

  • String, restituisce una rappresentazione in forma di stringa dell'oggetto

toJSON

Restituisce la rappresentazione in formato JSON dell'oggetto, in genere restituisce una raccolta di proprietà leggibili definite dall'oggetto

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

Parametri di chiamata:

  • key: stringa, non utilizzata

risultato di ritorno:

  • Value, che restituisce un valore serializzabile in JSON