API di HTTP Server
Panoramica della tecnologia API HTTP Server.
Per sviluppare l'API server HTTP, sono necessarie queste intestazioni:
Per indicazioni sulla programmazione per questa tecnologia, vedere:
Enumerazioni
HTTP_503_RESPONSE_VERBOSITY L'enumerazione HTTP_503_RESPONSE_VERBOSITY definisce i livelli di verbosità per un servizio 503, il servizio non disponibile, le risposte agli errori. Questa struttura deve essere usata quando si imposta o si esegue una query su HttpServer503ResponseProperty in una coda di richieste. |
HTTP_AUTH_STATUS Definisce lo stato di autenticazione di una richiesta. |
HTTP_AUTHENTICATION_HARDENING_LEVELS Livello di protezione avanzata del server. |
HTTP_CACHE_POLICY_TYPE Il tipo di enumerazione HTTP_CACHE_POLICY_TYPE definisce i criteri di cache disponibili. |
HTTP_DATA_CHUNK_TYPE Definisce l'origine dati per un blocco di dati. |
HTTP_DELEGATE_REQUEST_PROPERTY_ID Descrive le informazioni sulla proprietà per una richiesta delegata. |
HTTP_ENABLED_STATE Definisce lo stato di una coda di richieste, di una sessione server o di un gruppo di URL. |
HTTP_FEATURE_ID Definisce le costanti che specificano un identificatore per una funzionalità HTTP. |
HTTP_HEADER_ID Il tipo di enumerazione HTTP_HEADER_ID elenca le intestazioni note per le richieste e le risposte HTTP e associa un indice di matrice a ogni intestazione. |
HTTP_LOG_DATA_TYPE Identifica il tipo di dati di log. |
HTTP_LOGGING_ROLLOVER_TYPE Definisce i tipi di rollover del file di log. |
HTTP_LOGGING_TYPE Definisce il tipo di registrazione eseguita. |
HTTP_QOS_SETTING_TYPE Identifica il tipo di un'impostazione QOS contenuta in una struttura HTTP_QOS_SETTING_INFO. |
HTTP_REQUEST_AUTH_TYPE L'enumerazione HTTP_REQUEST_AUTH_TYPE definisce i tipi di autenticazione supportati dall'API server HTTP. Questa enumerazione viene usata nella struttura HTTP_REQUEST_AUTH_INFO. |
HTTP_REQUEST_INFO_TYPE L'enumerazione HTTP_REQUEST_INFO_TYPE definisce il tipo di informazioni contenute nella struttura HTTP_REQUEST_INFO . |
HTTP_REQUEST_PROPERTY Definisce le proprietà configurate dall'API server HTTP in una richiesta. |
HTTP_REQUEST_TIMING_TYPE Definisce le costanti che specificano i possibili tempi di richiesta per i quali verranno restituite informazioni in HTTP_REQUEST_TIMING_INFO. |
HTTP_RESPONSE_INFO_TYPE L'enumerazione HTTP_RESPONSE_INFO_TYPE definisce il tipo di informazioni contenute nella struttura HTTP_RESPONSE_INFO. Questa enumerazione viene usata nella struttura HTTP_RESPONSE_INFO. |
HTTP_SERVER_PROPERTY Definisce le proprietà configurate dall'API server HTTP in un gruppo di URL, una sessione del server o una coda di richieste. |
HTTP_SERVICE_BINDING_TYPE HTTP_SERVICE_BINDING_TYPE tipo enumerato specifica il tipo di stringa per i nomi di servizio. |
HTTP_SERVICE_CONFIG_CACHE_KEY Usato nelle funzioni HttpSetServiceConfiguration e HttpQueryServiceConfiguration. |
HTTP_SERVICE_CONFIG_ID Definisce le opzioni di configurazione del servizio. |
HTTP_SERVICE_CONFIG_QUERY_TYPE Il tipo di enumerazione HTTP_SERVICE_CONFIG_QUERY_TYPE definisce vari tipi di query da eseguire. Viene usato nelle strutture HTTP_SERVICE_CONFIG_SSL_QUERY, HTTP_SERVICE_CONFIG_SSL_CCS_QUERY e HTTP_SERVICE_CONFIG_URLACL_QUERY. |
HTTP_SERVICE_CONFIG_TIMEOUT_KEY L'enumerazione HTTP_SERVICE_CONFIG_TIMEOUT_KEY definisce il tipo di timer sottoposto a query o configurato tramite la struttura HTTP_SERVICE_CONFIG_TIMEOUT_SET. |
HTTP_VERB Il tipo di enumerazione HTTP_VERB definisce i valori usati per specificare verbi HTTP noti e standard nella struttura HTTP_REQUEST. La maggior parte di questi verbi noti sono documentati in RFC 2616 e RFC 2518, come indicato di seguito. |
Funzioni
HTTP_EQUAL_VERSION Restituisce un valore diverso da zero se una struttura HTTP_VERSION è uguale a una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTP_GREATER_EQUAL_VERSION La macro HTTP_GREATER_EQUAL_VERSION restituisce un valore diverso da zero se una struttura HTTP_VERSION è maggiore o uguale a una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTP_GREATER_VERSION Restituisce un valore diverso da zero se una struttura di HTTP_VERSION è maggiore di una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTP_IS_NULL_ID Determina se l'HTTP_OPAQUE_ID è NULL. |
HTTP_LESS_EQUAL_VERSION Restituisce un valore diverso da zero se una struttura di HTTP_VERSION è minore o uguale a una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTP_LESS_VERSION Restituisce un valore diverso da zero se una struttura HTTP_VERSION è minore di una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTP_NOT_EQUAL_VERSION Restituisce un valore diverso da zero se una struttura HTTP_VERSION è maggiore o minore di una combinazione di versione principale/secondaria specificata o zero se è uguale. |
HTTP_SET_NULL_ID La macro HTTP_SET_NULL_ID imposta l'HTTP_OPAQUE_ID su NULL. |
HTTP_SET_VERSION Imposta una struttura di HTTP_VERSION specificata su una combinazione di versione principale/secondaria specificata. |
HttpAddFragmentToCache La funzione HttpAddFragmentToCache memorizza nella cache un frammento di dati con un nome specificato in base al quale può essere recuperato o aggiorna i dati memorizzati nella cache in un nome specificato. |
HttpAddUrl Registra un URL specificato in modo che le richieste corrispondenti vengano indirizzate a una coda di richiesta dell'API DEL server HTTP specificata. |
HttpAddUrlToUrlGroup Aggiunge l'URL specificato al gruppo DI URL identificato dall'ID gruppo DI URL. |
HTTPAPI_EQUAL_VERSION Restituisce un valore diverso da zero se una struttura di HTTPAPI_VERSION è esattamente uguale a una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTPAPI_GREATER_VERSION Restituisce un valore diverso da zero se una struttura HTTPAPI_VERSION è maggiore di una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTPAPI_LESS_VERSION Restituisce un valore diverso da zero se una struttura di HTTPAPI_VERSION è minore di una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HTTPAPI_VERSION_GREATER_OR_EQUAL Il HTTPAPI_VERSION_GREATER_OR_EQUAL restituisce un valore diverso da zero se una struttura di HTTPAPI_VERSION è maggiore o uguale a una combinazione di versione principale/secondaria specificata o zero in caso contrario. |
HttpCancelHttpRequest La funzione HttpCancelHttpRequest annulla un reqest specificato. |
HttpCloseRequestQueue Chiude l'handle alla coda di richiesta specificata creata da HttpCreateRequestQueue. |
HttpCloseServerSession Elimina la sessione del server identificata dall'ID sessione del server. |
HttpCloseUrlGroup Chiude il gruppo DI URL identificato dall'ID gruppo URL. |
HttpCreateHttpHandle Crea una coda di richieste HTTP per l'applicazione chiamante e restituisce un handle. |
HttpCreateRequestQueue Crea una nuova coda di richiesta o apre una coda di richieste esistente. |
HttpCreateServerSession Crea una sessione server per la versione specificata. |
HttpCreateUrlGroup Crea un gruppo di URL nella sessione del server specificata. |
HttpDeclarePush Dichiara una relazione da risorsa a sottoresource da usare per un push del server HTTP. HTTP.sys quindi esegue un push server HTTP 2.0 per la risorsa specificata, se il protocollo sottostante, la connessione, il client e i criteri consentono l'operazione push. |
HttpDelegateRequestEx Delega una richiesta dalla coda della richiesta di origine alla coda della richiesta di destinazione. |
HttpDeleteServiceConfiguration Elimina i dati specificati, ad esempio indirizzi IP o certificati SSL, dall'archivio di configurazione dell'API SERVER HTTP, un record alla volta. |
HttpFindUrlGroupId Recupera un ID gruppo URL per un URL e una coda di richieste. |
HttpFlushResponseCache Rimuove dalla cache api del server HTTP associata a una determinata coda di richieste tutti i frammenti di risposta con un nome la cui parte del sito corrisponde a un urlPrefix specificato. |
HttpInitialize La funzione HttpInitialize inizializza il driver API server HTTP, la avvia, se non è già stata avviata e alloca strutture di dati per l'applicazione chiamante per supportare la creazione della coda di risposta e altre operazioni. |
HttpIsFeatureSupported Verifica se è supportata una determinata funzionalità. |
HttpPrepareUrl Analizza, analizza e normalizza un URL Unicode o punycode non normalizzato in modo che sia sicuro e valido da usare in altre funzioni HTTP. |
HttpQueryRequestQueueProperty Esegue query su una proprietà della coda di richiesta identificata dall'handle specificato. |
HttpQueryServerSessionProperty Esegue query su una proprietà server nella sessione del server specificata. |
HttpQueryServiceConfiguration Recupera uno o più record di configurazione DELL'API SERVER HTTP. |
HttpQueryUrlGroupProperty Esegue una query su una proprietà nel gruppo DI URL specificato. |
HttpReadFragmentFromCache La funzione HttpReadFragmentFromCache recupera un frammento di risposta con un nome specificato dalla cache dell'API HTTP Server. |
HttpReceiveClientCertificate La funzione HttpReceiveClientCertificate viene usata da un'applicazione server per recuperare un certificato SSL client o un token di associazione del canale (CBT). |
HttpReceiveHttpRequest Recupera la richiesta HTTP successiva disponibile dalla coda di richiesta specificata in modo sincrono o asincrono. |
HttpReceiveRequestEntityBody Riceve dati aggiuntivi del corpo dell'entità per una richiesta HTTP specificata. |
HttpRemoveUrl Causa l'arresto delle richieste di routing che corrispondono a una stringa UrlPrefix specificata a una coda di richiesta specificata. |
HttpRemoveUrlFromUrlGroup Rimuove l'URL specificato dal gruppo identificato dall'ID gruppo URL. |
HttpSendHttpResponse Invia una risposta HTTP alla richiesta HTTP specificata. |
HttpSendResponseEntityBody Invia i dati del corpo dell'entità associati a una risposta HTTP. |
HttpSetRequestProperty Imposta una nuova proprietà o modifica una proprietà esistente nella richiesta specificata. |
HttpSetRequestQueueProperty Imposta una nuova proprietà o modifica una proprietà esistente nella coda della richiesta identificata dall'handle specificato. |
HttpSetServerSessionProperty Imposta una nuova proprietà sessione server o modifica una proprietà esistente nella sessione del server specificata. |
HttpSetServiceConfiguration Crea e imposta un record di configurazione per l'archivio di configurazione dell'API SERVER HTTP. |
HttpSetUrlGroupProperty Imposta una nuova proprietà o modifica una proprietà esistente nel gruppo DI URL specificato. |
HttpShutdownRequestQueue Arresta le richieste di accodamento per il processo di coda di richiesta specificato. |
HttpTerminate Pulisce le risorse usate dall'API server HTTP per elaborare le chiamate da un'applicazione. |
HttpUpdateServiceConfiguration Aggiornamenti un parametro di configurazione del servizio che specifica un certificato TLS (Transport Layer Security) in un record di configurazione all'interno dell'archivio di configurazione dell'API HTTP. |
HttpWaitForDemandStart Attende l'arrivo di una nuova richiesta che può essere servita da un nuovo processo di coda di richieste. |
HttpWaitForDisconnect Notifica all'applicazione quando la connessione a un client HTTP viene interrotta per qualsiasi motivo. |
HttpWaitForDisconnectEx Questa funzione è un'estensione per HttpWaitForDisconnect. |
Strutture
HTTP_BANDWIDTH_LIMIT_INFO La struttura HTTP_BANDWIDTH_LIMIT_INFO viene usata per impostare o eseguire query sul limite di limitazione della larghezza di banda. Questa struttura deve essere usata quando si imposta o si esegue una query su HttpServerBandwidthProperty in una sessione url Group o server. |
HTTP_BINDING_INFO Usato per associare un gruppo DI URL a una coda di richieste. |
HTTP_BYTE_RANGE La struttura HTTP_BYTE_RANGE viene usata per specificare un intervallo di byte all'interno di un frammento di risposta memorizzato nella cache, un file o un altro blocco di dati. |
HTTP_CACHE_POLICY Usato per definire criteri di cache associati a un frammento di risposta memorizzato nella cache. |
HTTP_CHANNEL_BIND_INFO HTTP_CHANNEL_BIND_INFO. |
HTTP_CONNECTION_LIMIT_INFO Usato per impostare o eseguire query sul limite massimo di connessioni in sospeso per un gruppo di URL. |
HTTP_COOKED_URL Contiene una stringa di richiesta url con codifica Unicode con codifica UTF-16 convalidata e con puntatori in esso e lunghezza degli elementi. |
HTTP_DATA_CHUNK Rappresenta un singolo blocco di dati in memoria, in un file o nella cache del frammento di risposta dell'API SERVER HTTP. |
HTTP_DELEGATE_REQUEST_PROPERTY_INFO Descrive informazioni aggiuntive sulle proprietà durante la delega di una richiesta. |
HTTP_FLOWRATE_INFO Frequenza di trasferimento di una risposta. |
HTTP_KNOWN_HEADER Contiene i valori di intestazione per un'intestazione nota da una richiesta HTTP o da una risposta HTTP. |
HTTP_LISTEN_ENDPOINT_INFO Controlla se gli URL basati su IP devono essere in ascolto sull'indirizzo IP specifico o su un carattere jolly. |
HTTP_LOG_DATA Contiene un valore che specifica il tipo dei dati di log. |
HTTP_LOG_FIELDS_DATA Usato per passare i campi registrati per una risposta HTTP quando è abilitata la registrazione WC3. |
HTTP_LOGGING_INFO Usato per abilitare la registrazione lato server in un gruppo di URL o in una sessione del server. |
HTTP_MULTIPLE_KNOWN_HEADERS Specifica le intestazioni incluse in una risposta HTTP quando sono necessarie più intestazioni. |
HTTP_PROPERTY_FLAGS Utilizzato dalle strutture di configurazione delle proprietà per abilitare o disabilitare una proprietà in un oggetto di configurazione durante l'impostazione delle configurazioni delle proprietà. |
HTTP_QOS_SETTING_INFO Contiene informazioni su un'impostazione QOS. |
HTTP_REQUEST_AUTH_INFO Contiene lo stato di autenticazione della richiesta con un handle al token client che il processo di ricezione può usare per rappresentare il client autenticato. |
HTTP_REQUEST_CHANNEL_BIND_STATUS HTTP_REQUEST_CHANNEL_BIND_STATUS. |
HTTP_REQUEST_HEADERS Contiene le intestazioni inviate con una richiesta HTTP. |
HTTP_REQUEST_INFO Estende la struttura HTTP_REQUEST con informazioni aggiuntive sulla richiesta. |
HTTP_REQUEST_PROPERTY_STREAM_ERROR La struttura HTTP_REQUEST_PROPERTY_STREAM_ERROR rappresenta un codice di errore del flusso HTTP/2 o HTTP/3. |
HTTP_REQUEST_TIMING_INFO Contiene informazioni sulla quantità di tempo impiegato in ogni fase di elaborazione delle richieste. |
HTTP_REQUEST_V1 Usa la struttura HTTP_REQUEST per restituire i dati associati a una richiesta specifica. |
HTTP_REQUEST_V2 Estende la struttura della richiesta di HTTP_REQUEST_V1 con altre informazioni sulla richiesta. |
HTTP_RESPONSE_HEADERS Contiene le intestazioni inviate con una risposta HTTP. |
HTTP_RESPONSE_INFO Estende la struttura HTTP_RESPONSE con informazioni aggiuntive per la risposta. |
HTTP_RESPONSE_V1 Contiene i dati associati a una risposta HTTP. |
HTTP_RESPONSE_V2 Estende la struttura di risposta HTTP versione 1.0 con altre informazioni per la risposta. |
HTTP_SERVER_AUTHENTICATION_BASIC_PARAMS La struttura HTTP_SERVER_AUTHENTICATION_BASIC_PARAMS contiene le informazioni per l'autenticazione di base in un gruppo di URL. Questa struttura è contenuta nella struttura HTTP_SERVER_AUTHENTICATION_INFO. |
HTTP_SERVER_AUTHENTICATION_DIGEST_PARAMS Contiene le informazioni per l'autenticazione digest in un gruppo di URL. |
HTTP_SERVER_AUTHENTICATION_INFO Usato per abilitare l'autenticazione lato server in un gruppo di URL o in una sessione del server. |
HTTP_SERVICE_BINDING_A HTTP_SERVICE_BINDING_A. |
HTTP_SERVICE_BINDING_BASE HTTP_SERVICE_BINDING_BASE. |
HTTP_SERVICE_BINDING_W HTTP_SERVICE_BINDING_W. |
HTTP_SERVICE_CONFIG_CACHE_SET Usato nel parametro pConfigInformation della funzione HttpSetServiceConfiguration. |
HTTP_SERVICE_CONFIG_IP_LISTEN_PARAM Consente di specificare un indirizzo IP da aggiungere o eliminare dall'elenco di indirizzi IP a cui è associato il servizio HTTP. |
HTTP_SERVICE_CONFIG_IP_LISTEN_QUERY Utilizzato da HttpQueryServiceConfiguration per restituire un elenco degli indirizzi IP (Internet Protocol) a cui è associato il servizio HTTP. |
HTTP_SERVICE_CONFIG_SSL_CCS_KEY Funge da chiave in base alla quale identifica il record del certificato SSL che specifica che Http.sys deve consultare l'archivio certificati centralizzato (CCS) per trovare i certificati se la porta riceve un handshake TLS (Transport Layer Security). |
HTTP_SERVICE_CONFIG_SSL_CCS_QUERY Specifica una configurazione SSL (Secure Sockets Layer) per eseguire una query per un record DELL'archivio certificati centralizzato (CCS) SSL sulla porta quando si chiama la funzione HttpQueryServiceConfiguration. |
HTTP_SERVICE_CONFIG_SSL_CCS_SET Rappresenta il record del certificato SSL che specifica che Http.sys deve consultare l'archivio certificati centralizzato (CCS) per trovare i certificati se la porta riceve un handshake Transport Layer Security (TLS). |
HTTP_SERVICE_CONFIG_SSL_KEY Funge da chiave in base alla quale viene identificato un determinato record di certificato SSL (Secure Sockets Layer). |
HTTP_SERVICE_CONFIG_SSL_PARAM Definisce un record nell'archivio di configurazione SSL. |
HTTP_SERVICE_CONFIG_SSL_QUERY Consente di specificare un record specifico per eseguire query nell'archivio di configurazione SSL. |
HTTP_SERVICE_CONFIG_SSL_SET Usato per aggiungere un nuovo record all'archivio SSL o recuperare un record esistente da esso. |
HTTP_SERVICE_CONFIG_SSL_SNI_KEY Funge da chiave in base alla quale un determinato record di certificato SNI (Secure Sockets Layer) viene identificato nell'archivio SNI SSL. |
HTTP_SERVICE_CONFIG_SSL_SNI_QUERY Usato per specificare un determinato record di certificato SNI (Secure Sockets Layer) Per le query nell'archivio SNI SSL. |
HTTP_SERVICE_CONFIG_SSL_SNI_SET Usato per aggiungere un nuovo record certificato SNI (Secure Sockets Layer) Server Name Indication (SNI) all'archivio SNI SSL o recuperare un record esistente da esso. |
HTTP_SERVICE_CONFIG_TIMEOUT_SET Usato per impostare il valore di timeout a livello di API server HTTP. |
HTTP_SERVICE_CONFIG_URLACL_KEY Usato per specificare un record di prenotazione specifico nell'archivio prenotazioni dello spazio dei nomi URL. |
HTTP_SERVICE_CONFIG_URLACL_PARAM Consente di specificare le autorizzazioni associate a un determinato record nell'archivio prenotazioni dello spazio dei nomi URL. |
HTTP_SERVICE_CONFIG_URLACL_QUERY Usato per specificare un record di prenotazione specifico su cui eseguire query nell'archivio prenotazioni dello spazio dei nomi URL. |
HTTP_SERVICE_CONFIG_URLACL_SET Usato per aggiungere un nuovo record all'archivio prenotazioni URL o recuperare un record esistente da esso. |
HTTP_SSL_CLIENT_CERT_INFO Contiene dati relativi a un certificato client SSL (Secure Sockets Layer) che può essere usato per determinare se il certificato è valido. |
HTTP_SSL_INFO Contiene dati per una connessione che usa Secure Sockets Layer (SSL), ottenuti tramite l'handshake SSL. |
HTTP_STATE_INFO Utilizzato per abilitare o disabilitare una sessione del server o un gruppo di URL. |
HTTP_TIMEOUT_LIMIT_INFO Definisce i limiti di timeout di connessione specifici dell'applicazione. |
HTTP_TRANSPORT_ADDRESS Specifica gli indirizzi (locali e remoti) usati per una determinata connessione HTTP. |
HTTP_UNKNOWN_HEADER Contiene il nome e il valore per un'intestazione in una richiesta o risposta HTTP il cui nome non viene visualizzato nell'enumerazione . |
HTTP_VERSION Definisce una versione del protocollo HTTP richiesta da una richiesta o una risposta. |
HTTPAPI_VERSION Definisce la versione dell'API server HTTP. |