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.