Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Následující příznaky možností podporují WinHttpQueryOption a WinHttpSetOption.
WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS
Výchozí hodnota je NEPRAVDA. Pokud je nastavená hodnota PRAVDA, winHTTP nezaručuje průběh, pokud klientská aplikace zablokuje zpětná volání stavu.
Klientská aplikace musí věnovat zvláštní pozornost provádění minimálních operací v rámci zpětného volání bez blokování, vrácení co nejrychleji a zejména nesmí čekat na další volání WinHTTP. Pokud tyto pokyny nedodržuje, pravděpodobně dojde k negativnímu dopadu na výkon nebo potenciální zablokování aplikace. Pokud se používá předepsaném způsobem, může tato možnost zlepšit výkon.
WINHTTP_OPTION_AUTOLOGON_POLICY
Nastaví celočíselnou hodnotu bez znaménka, která určuje zásady automatického přihlášení s jednou z následujících hodnot.
| termín | Popis |
|---|---|
| WINHTTP_AUTOLOGON_SECURITY_LEVEL_HIGH | Výchozí přihlašovací údaje se nepoužívají. Všimněte si, že tento příznak se projeví pouze v případě, že server zadáte podle skutečného názvu počítače. Nebude platit, pokud server zadáte pomocí "localhost" nebo IP adresy. |
| WINHTTP_AUTOLOGON_SECURITY_LEVEL_LOW | Pro všechny požadavky se provádí ověřený protokol s použitím výchozích přihlašovacích údajů. |
| WINHTTP_AUTOLOGON_SECURITY_LEVEL_MEDIUM | Ověřený protokol s použitím výchozích přihlašovacích údajů se provádí pouze pro požadavky v místním intranetu. |
WINHTTP_OPTION_BACKGROUND_CONNECTIONS
Když tuto možnost nastavíte na popisovač relace, musíte předat počet připojení, která chcete otevřít. Při prvním odeslání požadavku místo otevření jediného připojení pak WinHttp otevře několik připojení paralelně. To může zvýšit výkon následných požadavků do stejného cíle, což nebude mít režijní náklady na zřízení připojení.
WINHTTP_OPTION_CALLBACK
Načte ukazatel na sadu funkcí zpětného volání pomocí WinHttpSetStatusCallback.
WINHTTP_OPTION_CLIENT_CERT_CONTEXT
Nastaví kontext klientského certifikátu. Pokud aplikace obdrží ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED, musí před opakováním požadavku zavolat WinHttpSetOption zadat certifikát. Jako součást zpracování této možnosti volá WinHttp CertDuplicateCertificateContext v kontextu certifikátu poskytnutého volajícím, aby kontext certifikátu mohl být nezávisle vydaný volajícím.
Poznámka:
Aplikace by se neměla pokoušet zavřít úložiště certifikátů s příznakem CERT_CLOSE_STORE_FORCE_FLAG ve volání CertCloseStore v úložišti certifikátů, ze kterého byl načten kontext certifikátu. Může dojít k narušení přístupu.
Když server požaduje klientský certifikát, WinHttpSendRequest nebo WinHttpReceiveResponse vrátí chybu ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED . Pokud server požádá o certifikát, ale nevyžaduje ho, může tuto možnost zadat, aby určila, že certifikát nemá. Server může zvolit jiné schéma ověřování nebo povolit anonymní přístup k serveru. Aplikace poskytuje makro WINHTTP_NO_CLIENT_CERT_CONTEXT v parametru lpBufferWinHttpSetOption , jak je znázorněno v následujícím příkladu kódu.
BOOL fRet = WinHttpSetOption(hRequest,
WINHTTP_OPTION_CLIENT_CERT_CONTEXT,
WINHTTP_NO_CLIENT_CERT_CONTEXT,
0);
Pokud server vyžaduje klientský certifikát, může v odpovědi odeslat stavový kód HTTP 403. Další informace najdete v WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST možnosti.
WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST
Načte strukturu SecPkgContext_IssuerListInfoEx, když je ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED chyba z WinHttpSendRequest nebo WinHttpReceiveResponse. Seznam vystavitelů ve struktuře obsahuje seznam přijatelných certifikačních autorit (CA) ze serveru. Klientská aplikace může vyfiltrovat seznam certifikační autority a načíst klientský certifikát pro ověřování SSL.
Pokud server požádá o klientský certifikát, ale nevyžaduje ho, může aplikace volat WinHttpSetOption s možností WINHTTP_OPTION_CLIENT_CERT_CONTEXT . Další informace najdete v WINHTTP_OPTION_CLIENT_CERT_CONTEXT možnosti.
WINHTTP_OPTION_CODEPAGE
Nastaví znakovou stránku , která se používá ke zpracování adresy URL (to znamená řetězce dotazu). Výchozí hodnota je UTF8.
WINHTTP_OPTION_CONFIGURE_PASSPORT_AUTH
Nastaví celočíselnou hodnotu bez znaménka, která určuje, jestli je povolené ověřování Passportem v ověřování WinHTTP . Hodnota může být jedna z následujících možností:
| termín | Popis |
|---|---|
| WINHTTP_DISABLE_PASSPORT_AUTH | Ověřování službou Microsoft Passport je zakázané. Toto je výchozí hodnota. |
| WINHTTP_DISABLE_PASSPORT_KEYRING | Keyring passportu je zakázaný. Toto je výchozí hodnota. |
| WINHTTP_ENABLE_PASSPORT_AUTH | Ověřování passportem je povolené. |
| WINHTTP_ENABLE_PASSPORT_KEYRING | Je povolená klávesová zkratka Passportu. |
WINHTTP_OPTION_CONNECT_RETRIES
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje počet pokusůWinHTTP o připojení k hostiteli. Microsoft Windows HTTP Services (WinHTTP) se pokusí pouze jednou na ip adresu (Internet Protocol). Pokud se například pokusíte připojit k hostiteli s více adresami, který má 10 IP adres a WINHTTP_OPTION_CONNECT_RETRIES je nastavená na hodnotu 7, pokusí se winHTTP připojit pouze k první sedmi IP adrese. Pokud je WINHTTP_OPTION_CONNECT_RETRIES nastavená na 20 ip adres, služba WinHTTP se pokusí použít stejnou sadu 10 IP adres pouze jednou. Pokud pokus o připojení stále selže po zadaném počtu pokusů nebo pokud vypršel časový limit připojení před tím, požadavek se zruší. Výchozí hodnota pro WINHTTP_OPTION_CONNECT_RETRIES je pět pokusů.
WINHTTP_OPTION_CONNECT_TIMEOUT
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje hodnotu časového limitu v milisekundách. Nastavení této možnosti na nekonečné (0xFFFFFFFF) tento časovač zakáže.
Pokud žádost o připojení TCP trvá déle, než je tato hodnota časového limitu, požadavek se zruší. Výchozí časový limit je 60 sekund. Při pokusu o připojení k více IP adres pro jednoho hostitele (více hostitelů) je limit časového limitu pro každé jednotlivá připojení.
WINHTTP_OPTION_CONNECTION_INFO
Načte zdrojovou a cílovou IP adresu a port požadavku, který vygeneroval odpověď při vrácení WinHttpReceiveResponse . Aplikace volá WinHttpQueryOption s možností WINHTTP_OPTION_CONNECTION_INFO a poskytuje WINHTTP_CONNECTION_INFO strukturu v parametru lpBuffer . Další informace najdete v tématu WINHTTP_CONNECTION_INFO.
Platí pro: Windows XP s aktualizací SP2 a novější; Windows 2003 s aktualizací SP1 a novější.
WINHTTP_OPTION_CONNECTION_GUID
Označte připojení přidružené k popisovači požadavku WinHTTP s identifikátorem GUID. To umožňuje vlastní kontrolu nad tím, které požadavky používají skupiny připojení s možností WINHTTP_OPTION_MATCH_CONNECTION_GUID .
WINHTTP_OPTION_CONNECTION_STATS_V0
Retreives the TCP_INFO_v0 struct for the underlying connection used by the request. Vrácená struktura může obsahovat statistiky z předchozích požadavků odeslaných přes stejné připojení.
Poznámka:
Tato možnost byla nahrazena WINHTTP_OPTION_CONNECTION_STATS_V1.
WINHTTP_OPTION_CONNECTION_STATS_V1
Retreives the TCP_INFO_v1 struct for the underlying connection used by the request. Vrácená struktura může obsahovat statistiky z předchozích požadavků odeslaných přes stejné připojení.
WINHTTP_OPTION_CONTEXT_VALUE
Nastaví nebo načte DWORD_PTR , který obsahuje ukazatel na kontextovou hodnotu přidruženou k tomuto popisovači HINTERNET . Hodnota uložená ve vyrovnávací paměti se použije a příznak možnosti WINHTTP_OPTION_CONTEXT_VALUE má přiřazenou novou hodnotu.
WINHTTP_OPTION_DECOMPRESSION
Nastaví DWORD příznaků, které určují, zda WinHTTP automaticky dekomprimuje tělo odpovědi komprimovanými kódováními obsahu. WinHTTP také nastaví odpovídající hlavičku Accept-Encoding, která přepíše všechny zadané volajícím. Podporované hodnoty jsou:
| termín | Popis |
|---|---|
| WINHTTP_DECOMPRESSION_FLAG_GZIP | Dekomprese kódování obsahu: odpovědi gzip. |
| WINHTTP_DECOMPRESSION_FLAG_DEFLATE | Dekomprese kódování obsahu: deflate odpovědi. |
| WINHTTP_DECOMPRESSION_FLAG_ALL | Dekomprese odpovědí s jakýmkoli podporovaným kódováním obsahu. |
WinHTTP ve výchozím nastavení doručí komprimované odpovědi volajícímu bez úprav.
WINHTTP_OPTION_DISABLE_CERT_CHAIN_BUILDING
Nastavení této možnosti na popisovači relace WinHttp umožňuje povolit nebo zakázat, jestli je sestaven řetěz certifikátů serveru.
WINHTTP_OPTION_DISABLE_FEATURE
Nastaví celočíselnou hodnotu bez znaménka, která určuje, které funkce jsou zakázány s jedním nebo více z následujících příznaků. Mějte na paměti, že tato funkce by měla být předána winHttpSetOption pouze na zpracování požadavků po vytvoření popisovače požadavku pomocí WinHttpOpenRequest a před odesláním požadavku pomocí WinHttpSendRequest.
| termín | Popis |
|---|---|
| WINHTTP_DISABLE_AUTHENTICATION | Automatické ověřování je zakázané. |
| WINHTTP_DISABLE_COOKIES | Automatické přidávání hlaviček souborů cookie do požadavků je zakázané. Vrácené soubory cookie se také automaticky nepřidávají do databáze souborů cookie. Zakázání souborů cookie může mít za následek nízký výkon ověřování passportem. |
| WINHTTP_DISABLE_KEEP_ALIVE | Zakáže sémantiku udržování připojení. Pro msn, NTLM a další typy ověřování jsou vyžadovány sémantiky udržování naživu. |
| WINHTTP_DISABLE_REDIRECTS | Automatické přesměrování je zakázáno při odesílání požadavků pomocí WinHttpSendRequest. Pokud je automatické přesměrování zakázané, musí aplikace zaregistrovat funkci zpětného volání, aby ověřování Passportu proběhlo úspěšně. |
WINHTTP_OPTION_DISABLE_GLOBAL_POOLING
Zakáže globální sdružování napříč relacemi. Tento postup se doporučuje, protože globální sdružování napříč relacemi je starší verze chování, které je ve výchozím nastavení podporováno z důvodů kompatibility. To má vliv na pozdější nastavení maximálního počtu připojení ručně.
WINHTTP_OPTION_DISABLE_PROXY_AUTH_SCHEMES
Zakáže jeden nebo více následujících postupů ověřování proxy serveru v relaci WinHTTP tím, že poskytne OR všechny příslušné volby. Toto jsou všechna schémata s výjimkou WINHTTP_PROXY_DISABLE_AUTH_LOCAL_SERVICE, která při odesílání požadavků na zpětné smyčky nebo místní adresu vynutí použití účtu místního počítače. To brání úniku systémových přihlašovacích údajů místním proxy serverům HTTP.
| termín | Popis |
|---|---|
| WINHTTP_PROXY_DISABLE_SCHEME_BASIC | Zakáže schéma základního ověřování. |
| WINHTTP_PROXY_DISABLE_SCHEME_DIGEST | Zakáže schéma ověřování hodnotou hash. |
| WINHTTP_PROXY_DISABLE_SCHEME_NTLM | Zakáže schéma ověřování NTLM. |
| WINHTTP_PROXY_DISABLE_SCHEME_KERBEROS | Zakáže schéma ověřování kerberos. |
| WINHTTP_PROXY_DISABLE_SCHEME_NEGOTIATE | Zakáže schéma ověřování Negotiate. |
| WINHTTP_PROXY_DISABLE_AUTH_LOCAL_SERVICE | Vynutí použití účtu místního počítače při odesílání požadavků na zpětné smyčky nebo místní adresu. |
WINHTTP_OPTION_DISABLE_SECURE_PROTOCOL_FALLBACK
Zabrání službě WinHTTP v opakování připojení s nižší verzí protokolu zabezpečení v případě selhání počátečního vyjednávání protokolu.
WINHTTP_OPTION_DISABLE_STREAM_QUEUE
Umožňuje novým požadavkům otevřít další připojení HTTP/2, pokud je dosaženo maximálního limitu souběžného datového proudu, a nečeká na další dostupný datový proud u existujícího připojení.
WINHTTP_OPTION_ENABLE_FEATURE
Nastaví celočíselnou hodnotu bez znaménka, která určuje aktuálně povolené funkce. Může to být jedna z následujících hodnot.
| termín | Popis |
|---|---|
| WINHTTP_ENABLE_SSL_REVERT_IMPERSONATION | Pokud je tato možnost povolená, WinHTTP dočasně vrátí zosobnění klienta po dobu trvání operací ověřování certifikátů SSL. Tuto hodnotu lze nastavit pouze u popisovače relace. |
| WINHTTP_ENABLE_SSL_REVOCATION | Pokud je tato možnost povolená, winHTTP povolí odvolání SSL. Tuto hodnotu lze nastavit pouze u popisovače požadavku. |
WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL
Nastaví bitovou masku DWORD s přijatelnými pokročilými verzemi HTTP. Možné hodnoty:
| termín | Popis |
|---|---|
| WINHTTP_PROTOCOL_FLAG_HTTP2 (0x1) | Povolí požadavek HTTP/2. |
| WINHTTP_PROTOCOL_FLAG_HTTP3 (0x2) | Povolí požadavek HTTP/3. |
| Žádné (0x0) | Omezí požadavek na HTTP/1.1 a předchozí. |
Starší verze PROTOKOLU HTTP (1.1 a starší) nelze zakázat pomocí této možnosti. Výchozí hodnota je 0x0.
WINHTTP_OPTION_ENABLE_HTTP2_PLUS_CLIENT_CERT
Tuto možnost můžete nastavit u popisovače relace WinHttp, aby služba WinHttp mohla při použití protokolu HTTP/2 používat kontext klientského certifikátu poskytnutého volajícím.
WINHTTP_OPTION_ENABLETRACING
Nastaví hodnotu BOOL , která určuje, jestli je trasování aktuálně povolené. Tuto možnost lze nastavit pouze u popisovače NULLHINTERNET . Viz také shromažďování trasování WinHTTP.
WINHTTP_OPTION_ENCODE_EXTRA
Povolí kódování v procentech adres URL pro cestu a řetězec dotazu.
Alternativně můžete před voláním WinHttp zakódovat procento.
WINHTTP_OPTION_EXPIRE_CONNECTION
Tuto možnost lze nastavit pouze u popisovače požadavku, který je stále aktivní (odesílání nebo příjem). Nastavením této možnosti sdělíte službě WinHttp, aby přestal obsluhovat požadavky na připojení přidružené k obslužné rutině požadavku předané. Připojení se zavře po dokončení zpracování požadavku, se kterým se tato možnost zavolá. Tato možnost nepřebírají žádné parametry.
WINHTTP_OPTION_EXTENDED_ERROR
Načte dlouhou celočíselnou hodnotu bez znaménka, která obsahuje kód chyby rozhraní Microsoft Windows Sockets mapovaný na chybové zprávy ERROR_WINHTTP_* naposledy vrácený v tomto kontextu vlákna. Jako hodnotu popisovače můžete předat hodnotu NULL .
WINHTTP_OPTION_FEATURE_SUPPORTED
Zkontrolujte, jestli tato verze WinHTTP podporuje příznak poskytnuté možnosti.
WINHTTP_OPTION_FIRST_AVAILABLE_CONNECTION
Pokud WinHttp ve výchozím nastavení odešle požadavek, pokud nejsou k dispozici žádná dostupná připojení k odeslání požadavku, služba WinHttp se pokusí navázat nové připojení a požadavek bude vázán na toto nové připojení. Když tuto možnost nastavíte, místo toho se takový požadavek bude obsluhovat při prvním připojení, které bude k dispozici, a nemusí nutně být navázáno.
WINHTTP_OPTION_GLOBAL_PROXY_CREDS
Vezme ukazatel na WINHTTP_CREDS_EX strukturu s parametrem funkce hInternet nastaveným na hodnotu NULL. Tato možnost vyžaduje klíč registru HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings! ShareCredsWithWinHttp. Pokud tento klíč registru není nastavený, winHTTP vrátí chybu ERROR_WINHTTP_INVALID_OPTION. Tento klíč registru není ve výchozím nastavení k dispozici. Když je nastavená, WinINet odešle přihlašovací údaje dolů do WinHTTP. Pokaždé, když WinHttp získá ověřovací výzvu a v aktuálním popisovači nejsou nastavené žádné přihlašovací údaje, použije přihlašovací údaje poskytnuté službou WinINet. Aby uživatelé mohli kromě přihlašovacích údajů proxy serveru sdílet přihlašovací údaje serveru, musí nastavit WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS .
WINHTTP_OPTION_GLOBAL_SERVER_CREDS
Vezme ukazatel na WINHTTP_CREDS_EX strukturu s parametrem funkce hInternet nastaveným na hodnotu NULL. Tato možnost vyžaduje klíč registru HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings! ShareCredsWithWinHttp. Pokud tento klíč registru není nastavený, winHTTP vrátí chybu ERROR_WINHTTP_INVALID_OPTION. Tento klíč registru není ve výchozím nastavení k dispozici. Když je nastavená, WinINet odešle přihlašovací údaje dolů do WinHTTP. Pokaždé, když WinHttp získá ověřovací výzvu a v aktuálním popisovači nejsou nastavené žádné přihlašovací údaje, použije přihlašovací údaje poskytnuté službou WinINet. Aby uživatelé mohli kromě přihlašovacích údajů proxy serveru sdílet přihlašovací údaje serveru, musí nastavit WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS .
WINHTTP_OPTION_HANDLE_TYPE
Načte celočíselnou hodnotu bez znaménka, která obsahuje typ popisovače HINTERNET předaného. Návratová hodnota může být jedna z následujících možností:
| termín | Popis |
|---|---|
| WINHTTP_HANDLE_TYPE_CONNECT | Popisovač je popisovač připojení. |
| WINHTTP_HANDLE_TYPE_REQUEST | Popisovač je popisovač požadavku. |
| WINHTTP_HANDLE_TYPE_SESSION | Popisovač je popisovač relace. |
WINHTTP_OPTION_HTTP_PROTOCOL_REQUIRED
Zabraňuje tomu, aby se pro požadavek používaly jiné verze protokolu než verze povolené WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL .
WINHTTP_OPTION_HTTP_PROTOCOL_USED
Získá DWORD určující, která pokročilá verze HTTP byla použita pro daný požadavek. Seznam možných hodnot najdete v tématu WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL.
WINHTTP_OPTION_HTTP_VERSION
Nastaví nebo načte HTTP_VERSION_INFO strukturu deklarující podporovanou starší verzi PROTOKOLU HTTP. Jedná se o možnost pro celý proces; pro popisovač použijte hodnotu NULL .
Poznámka:
Tato struktura je platná pro http/1.0 a HTTP/1.1. Moderní verze HTTP najdete v tématu WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL a WINHTTP_OPTION_HTTP_PROTOCOL_USED.
WINHTTP_OPTION_HTTP2_KEEPALIVE
Tuto možnost můžete nastavit u popisovače relace tak, aby winHttp používala rámce HTTP/2 PING jako keepalive mechanismus. Volající zadávají časový limit v milisekundách a po žádné aktivitě připojení pro dané časové období začne WinHttp odesílat rámce HTTP/2 PING. Volající nemohou nastavit hodnotu časového limitu menší než 5000 milisekund.
WINHTTP_OPTION_HTTP2_PLUS_TRANSFER_ENCODING
Tuto možnost můžete nastavit pro popisovač požadavku WinHttp, který určuje, jak se WinHttp chová, když odpověď HTTP/2 obsahuje hlavičku "Transfer-Encoding". V takovém případě winHttp vrátí chybu, pokud je tato možnost nastavená na HODNOTU NEPRAVDA.
WINHTTP_OPTION_HTTP2_RECEIVE_WINDOW
Nastavte počáteční velikost okna příjmu datového proudu HTTP/2 a prahovou hodnotu pro odesílání aktualizací okna pomocí struktury WINHTTP_HTTP2_RECEIVE_WINDOW .
WINHTTP_OPTION_HTTP3_HANDSHAKE_TIMEOUT
Použije vyrovnávací paměť k nastavení časového limitu handshake HTTP/3 v milisekundách jako PDWORD.
WINHTTP_OPTION_HTTP3_INITIAL_RTT
Konfiguruje počáteční rtT v milisekundách, které používá msquic.
WINHTTP_OPTION_HTTP3_KEEPALIVE
Povolí sémantiku udržování připojení. Použije vyrovnávací paměť k nastavení časového limitu udržování v milisekundách jako PDWORD.
WINHTTP_OPTION_HTTP3_STREAM_ERROR_CODE
Načte chybu zadanou serverem v datovém proudu HTTP/3 použitém k odeslání požadavku.
WINHTTP_OPTION_IGNORE_CERT_REVOCATION_OFFLINE
Umožňuje zabezpečeným připojením používat certifikáty zabezpečení, pro které nelze stáhnout seznam odvolaných certifikátů.
WINHTTP_OPTION_IPV6_FAST_FALLBACK
Umožňuje rychlé použití protokolu IPv6 (Šťastnější eyeballs) pro připojení. Toto chování se podobá chování Happy Eyeballs popsané v DOKUMENTU RFC 6555 pro zlepšení doby připojení v sítích, kde IPv6 je nespolehlivý.
- Pokud se adresy IPv6 i IPv4 pro daného hostitele přeloží, WinHttp se začne připojovat k první vyřešené adrese IPv6 s krátkým časovým limitem (300 ms).
- Pokud se připojení nezdaří, WinHttp se pokusí připojit k první vyřešené adrese IPv4 se standardním časovým limitem.
- Pokud druhé připojení selže, WinHttp zopakuje první vyřešenou adresu IPv6 se standardním časovým limitem.
- Pokud třetí připojení selže, winHttp se vrátí k výchozímu chování všech zbývajících adres a pokusí se připojit k jednotlivým adresům se standardním časovým limitem, dokud se připojení neprovedou nebo nezůstanou žádné adresy.
WINHTTP_OPTION_IS_PROXY_CONNECT_RESPONSE
Získá, zda se dá načíst odpověď služby Proxy Return Connect nebo ne.
WINHTTP_OPTION_MATCH_CONNECTION_GUID
Vezme WINHTTP_MATCH_CONNECTION_GUID strukturu, která službě WinHTTP sdělí, že má požadavek obsluhovat odpovídající připojení. Pokud je nastavená WINHTTP_MATCH_CONNECTION_GUID_FLAG_REQUIRED , je možné použít pouze připojení s odpovídajícím identifikátorem GUID. V opačném případě je možné použít připojení s odpovídajícími identifikátory GUID a připojeními, která nejsou označena žádným identifikátorem GUID.
WINHTTP_OPTION_MAX_CONNS_PER_1_0_SERVER
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje maximální povolený počet připojení na server HTTP/1.0. Výchozí hodnota je INFINITE.
Platí pro: Windows Vista s AKTUALIZACÍ SP1 a novější; Windows Server 2008 a novější
WINHTTP_OPTION_MAX_CONNS_PER_SERVER
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje maximální povolený počet připojení na server. Výchozí hodnota je INFINITE.
Pokud je tato možnost nastavená na nulu, winHTTP nastaví limit počtu připojení na 2.
WINHTTP_OPTION_MAX_HTTP_AUTOMATIC_REDIRECTS
Nastaví maximální počet přesměrování, které winHTTP následuje; výchozí hodnota je 10. Tento limit brání neoprávněným webům v pozastavení klienta WinHTTP po velkém počtu přesměrování.
Platí pro: Windows XP s aktualizací SP1 a novější; Windows 2000 s aktualizací SP3 a novější.
WINHTTP_OPTION_MAX_HTTP_STATUS_CONTINUE
Maximální počet odpovědí stavového kódu Informational 100-199 se před vrácením konečného stavového kódu klientovi WinHTTP ignoroval. Informační stavové kódy 100-199 mohou být odeslány serverem před konečným stavovým kódem a jsou popsány ve specifikaci http/1.1 (další informace naleznete v dokumentu RFC 2616). Výchozí hodnota je 10.
Platí pro: Windows XP s aktualizací SP1 a novější; Windows 2000 s aktualizací SP3 a novější.
WINHTTP_OPTION_MAX_RESPONSE_DRAIN_SIZE
Vázaná na množství dat vyprázdněných z odpovědí za účelem opětovného použití připojení určeného v bajtech. Výchozí hodnota je 1 MB.
Platí pro: Windows XP s aktualizací SP1 a novější; Windows 2000 s aktualizací SP3 a novější.
WINHTTP_OPTION_MAX_RESPONSE_HEADER_SIZE
Mez nastavená na maximální velikost části hlavičky odpovědi serveru zadané v bajtech. Tato hranice chrání klienta před neoprávněným serverem, který se pokouší klienta zastavit odesláním odpovědi s nekonečným množstvím dat hlavičky. Výchozí hodnota je 64 kB.
Platí pro: Windows XP s aktualizací SP1 a novější; Windows 2000 s aktualizací SP3 a novější.
WINHTTP_OPTION_PARENT_HANDLE
Načte nadřazený popisovač k tomuto popisovači.
WINHTTP_OPTION_PASSPORT_COBRANDING_TEXT
Načte řetězec obsahující text cobrandingu poskytnutý přihlašovacím serverem Passport. Tato možnost by se měla načíst okamžitě po odezvě přihlašovacího serveru se stavovým kódem 401. Aplikace by měla předat velikost vyrovnávací paměti v bajtech, která je dostatečně velká pro uložení vráceného řetězce.
WINHTTP_OPTION_PASSPORT_COBRANDING_URL
Načte řetězec, který obsahuje adresu URL pro grafiku cobrandingu poskytovanou přihlašovacím serverem Passport. Tato možnost by se měla načíst okamžitě po odezvě přihlašovacího serveru se stavovým kódem 401. Aplikace by měla předat velikost vyrovnávací paměti v bajtech, která je dostatečně velká pro uložení vráceného řetězce.
WINHTTP_OPTION_PASSPORT_RETURN_URL
Nastaví možnost jen pro čtení u popisovače požadavku, který načte zpáteční adresu URL služby Passport.
WINHTTP_OPTION_PASSPORT_SIGN_OUT
Nastaví možnost v popisovači relace, aby se odhlasil z přihlášení k Passportu. Aplikace by měla předat adresu URL pro vrácení služby Passport, která byla načtena pomocí WINHTTP_OPTION_PASSPORT_RETURN_URL. Vymažou se všechny soubory cookie související s adresou URL pro vrácení.
WINHTTP_OPTION_PASSWORD
Nastaví nebo načte řetězcovou hodnotu, která obsahuje heslo přidružené k popisovači požadavku.
WINHTTP_OPTION_PROXY
Nastaví nebo načte WINHTTP_PROXY_INFO strukturu , která obsahuje data proxy serveru v existujícím popisovači relace nebo popisovači požadavku. Při načítání dat proxy musí aplikace uvolnit řetězce lpszProxy a lpszProxyBypass obsažené v této struktuře (pokud nejsou NULL) pomocí funkce GlobalFree . Aplikace se může dotazovat na globální data proxy serveru (výchozí proxy server) předáním popisovače NULL .
WINHTTP_OPTION_PROXY_PASSWORD
Nastaví nebo načte řetězcovou hodnotu, která obsahuje heslo použité pro přístup k proxy serveru.
WINHTTP_OPTION_PROXY_SPN_USED
Získá hlavní název proxy serveru, který WinHTTP poskytl SSPI během ověřování. Tato řetězcová hodnota se používá k předání do SspiPromptForCredentials po selhání ověřování.
WINHTTP_OPTION_PROXY_USERNAME
Nastaví nebo načte řetězcovou hodnotu, která obsahuje uživatelské jméno použité pro přístup k proxy serveru.
WINHTTP_OPTION_QUIC_STATS
Načte QUIC_STATISTICS strukturu, která obsahuje informace o připojení, jako je RTT a bajty odeslané a přijaté.
WINHTTP_OPTION_READ_BUFFER_SIZE
Tato možnost je zastaralá; nemá žádný účinek.
WINHTTP_OPTION_RECEIVE_PROXY_CONNECT_RESPONSE
Nastaví, zda je možné načíst entitu odpovědi proxy serveru nebo ne. Tato možnost je ve výchozím nastavení zakázaná.
WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje hodnotu časového limitu v milisekundách, aby počkala na přijetí všech hlaviček odpovědi na požadavek. Pokud se službě WinHTTP nepodaří přijmout všechna záhlaví v rámci tohoto časového limitu, žádost se zruší. Výchozí hodnota časového limitu je 90 sekund.
Tento časový limit je zaškrtnutý pouze v případě, že se data přijímají ze soketu. V důsledku toho se po vypršení časového limitu klientské aplikace neoznámí, dokud ze serveru nedorazí další data. Pokud ze serveru nepřicházejí žádná data, prodleva mezi vypršením časového limitu a oznámením klientské aplikace může být tak velká jako hodnota časového limitu nastavená pomocí parametru dwReceiveTimeout funkce WinHttpSetTimeouts .
WINHTTP_OPTION_RECEIVE_TIMEOUT
Nastaví nebo načte nepodepsanou dlouhou celočíselnou hodnotu, která obsahuje hodnotu časového limitu v milisekundách, aby získala částečnou odpověď na požadavek nebo přečetla některá data. Pokud odpověď trvá déle, než je tato hodnota časového limitu, požadavek se zruší. Výchozí hodnota časového limitu je 30 sekund.
WINHTTP_OPTION_REDIRECT_POLICY
Nastaví chování winHTTP týkající se zpracování stavového kódu http redirect 30x. Tuto možnost můžete nastavit pro relaci nebo zpracování požadavku na jednu z následujících hodnot:
| termín | Popis |
|---|---|
| WINHTTP_OPTION_REDIRECT_POLICY_ALWAYS | Všechna přesměrování jsou sledována automaticky. |
| WINHTTP_OPTION_REDIRECT_POLICY_DISALLOW_HTTPS_TO_HTTP | Následují všechna přesměrování s výjimkou těch, které pocházejí ze zabezpečené adresy URL (https) na nezabezpečenou adresu URL (http). Toto je výchozí nastavení. |
| WINHTTP_OPTION_REDIRECT_POLICY_NEVER | Přesměrování se nikdy neslouží. Stav 30x se vrátí do aplikace. |
WINHTTP_OPTION_REJECT_USERPWD_IN_URL
Odmítne adresy URL, které obsahují uživatelské jméno a heslo. Tato možnost také odmítne adresy URL, které obsahují sémantiku username:password , a to i v případě, že není zadáno žádné uživatelské jméno nebo heslo. Například "u:p@hostname", ":@hostname", "u:", "u:@hostname" a ":p@název hostitele" by byly označeny jako neplatné. Pokud funkci předá neplatná adresa URL, vrátí ERROR_WINHTTP_INVALID_URL. Tato možnost je ve výchozím nastavení vypnutá.
WINHTTP_OPTION_REQUEST_ANNOTATION
Umožňuje získat a nastavit poznámku požadavku pro zadaný název poznámky. Volající tak může k požadavku připojit řetězec pro pozdější načtení, aby identifikoval požadavky podle jakékoli vlastní logiky, kterou volající najde užitečný.
WINHTTP_OPTION_REQUEST_PRIORITY
Tato možnost je zastaralá; nemá žádný účinek.
WINHTTP_OPTION_REQUEST_STATS
Retreives statistics for the request. Seznam dostupných statistik najdete v tématu WINHTTP_REQUEST_STATS.
WINHTTP_OPTION_REQUEST_TIMES
Retreives timing information for the request. Seznam dostupných časování najdete v tématu WINHTTP_REQUEST_TIMES.
WINHTTP_OPTION_REQUIRE_STREAM_END
Tato možnost říká službě WinHttp, aby ignorovala hlavičky odpovědi Content-Length a pokračovala v přijímání streamu, dokud se nepřijme příznak END_STREAM.
WINHTTP_OPTION_RESOLUTION_HOSTNAME
Tuto možnost můžete nastavit u popisovače požadavku WinHttp před odesláním. Pokud je tato možnost nastavená, WinHttp použije jako název hostitele pro překlad DNS řetězec poskytnutý volajícím.
WINHTTP_OPTION_RESOLVE_TIMEOUT
Nastaví nebo načte dlouhou celočíselnou hodnotu bez znaménka, která obsahuje hodnotu časového limitu v milisekundách, aby se přeložil název hostitele. Výchozí hodnota časového limitu je INFINITE. Pokud je zadaná jiná než výchozí hodnota, je režijní náklady na vytvoření jednoho vlákna na překlad názvů.
WINHTTP_OPTION_REVERT_IMPERSONATION_SERVER_CERT
Vrátí všechny zosobnění vlákna při vytváření řetězu certifikátů serveru, což místo toho vynutí použití tokenu procesu.
WINHTTP_OPTION_SECURE_PROTOCOLS
Nastaví celočíselnou hodnotu bez znaménka, která určuje, které protokoly SECURE (HTTPS) jsou přijatelné. Výchozí hodnota tohoto nastavení se liší podle verze operačního systému a může mít vliv na nainstalované aktualizace.
- Windows 11. Ve výchozím nastavení jsou povolené jenom protokoly TLS1.2 a TLS1.3.
- Windows 10 a Windows 8.1. Ve výchozím nastavení jsou povolené jenom protokoly SSL3, TLS1.0, TLS1.1 a TLS1.2.
- Windows 8 a Windows 7. Ve výchozím nastavení jsou povoleny pouze protokoly SSL3 a TLS1.
Hodnota může být kombinací jedné nebo více následujících hodnot.
| termín | Popis |
|---|---|
| WINHTTP_FLAG_SECURE_PROTOCOL_ALL | Můžete použít protokoly SSL (Secure Sockets Layer) 2.0, SSL 3.0 a TLS (Transport Layer Security). |
| WINHTTP_FLAG_SECURE_PROTOCOL_SSL2 | Lze použít protokol SSL 2.0. |
| WINHTTP_FLAG_SECURE_PROTOCOL_SSL3 | Lze použít protokol SSL 3.0. |
| WINHTTP_FLAG_SECURE_PROTOCOL_TLS1 | Lze použít protokol TLS 1.0. |
| WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_1 | Lze použít protokol TLS 1.1. |
| WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_2 | Lze použít protokol TLS 1.2. |
| WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_3 | Lze použít protokol TLS 1.3. |
Pokud potřebujete povolit podporu pro novější protokoly, ale nemůžete aplikaci znovu zkompilovat tak, aby používala odpovídající hodnoty WINHTTP_OPTION_SECURE_PROTOCOLS, můžete místo toho přidat DefaultSecureProtocols položku registru. Tato položka registru umožňuje určit, které zabezpečené protokoly se mají použít, když není nastavena možnost WINHTTP_OPTION_SECURE_PROTOCOLS .
Důležité
Následující pokyny zahrnují úpravu registru. Pokud však registr upravíte nesprávně, může dojít k vážným problémům. Proto se ujistěte, že tyto pokyny pečlivě dodržujete. Pro přidání ochrany zálohujte registr před úpravou. Potom můžete registr obnovit, pokud dojde k problému. Další informace o zálohování a obnovení registru naleznete v tématu Postup zálohování a obnovení registru v systému Windows.
Pokud aplikace nevolá WinHttpSetOption(WINHTTP_OPTION_SECURE_PROTOCOLS), systém zkontroluje DefaultSecureProtocols položku registru a pokud existuje, přepíše stávající výchozí nastavení operačního systému pomocí protokolů zadaných v DefaultSecureProtocols položce registru. Protokoly určené protokoly WinHTTP je možné přerušovat nastavením konfigurace Schannel (Secure Channel), která můžou protokoly zakázat.
Položku registru můžete přidat DefaultSecureProtocols do následující cesty:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp
Na počítačích s platformou x64 musíte také přidat DefaultSecureProtocols cestu Wow6432Node :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp
Hodnota registru je rastrový obrázek DWORD. Hodnota, kterou chcete použít, je určena přidáním hodnot odpovídajících požadovaným protokolům.
| Výchozí hodnotaSecureProtocols | Povolený protokol |
|---|---|
| 0x00000008 | Povolení SSL 2.0 ve výchozím nastavení |
| 0x00000020 | Povolení SSL 3.0 ve výchozím nastavení |
| 0x00000080 | Povolení protokolu TLS 1.0 ve výchozím nastavení |
| 0x00000200 | Povolení protokolu TLS 1.1 ve výchozím nastavení |
| 0x00000800 | Povolení protokolu TLS 1.2 ve výchozím nastavení |
| 0x00002000 | Povolení protokolu TLS 1.3 ve výchozím nastavení |
Pokud například chcete přepsat výchozí hodnoty pro WINHTTP_OPTION_SECURE_PROTOCOLS zadat tls 1.1 a TLS 1.2. V takovém případě vezměte hodnotu protokolu TLS 1.1 (0x00000200) a hodnotu protokolu TLS 1.2 (0x00000800), sečte je do kalkulačky (v programátorském režimu) a výsledná hodnota registru by byla 0x00000A00.
WINHTTP_OPTION_SECURITY_CERTIFICATE_STRUCT
Načte certifikát pro server SSL/TLS do struktury WINHTTP_CERTIFICATE_INFO . Aplikace musí uvolnit členy lpszSubjectInfo a lpszIssuerInfo s LocalFree.
WINHTTP_OPTION_SECURITY_FLAGS
Nastaví nebo načte celočíselnou hodnotu bez znaménka, která obsahuje příznaky zabezpečení popisovače. Může to být kombinace těchto hodnot:
| termín | Popis |
|---|---|
| SECURITY_FLAG_IGNORE_CERT_CN_INVALID | Umožňuje neplatný běžný název v certifikátu; to znamená, že název serveru určený aplikací neodpovídá běžnému názvu certifikátu. Pokud je tento příznak nastavený, aplikace neobdrží zpětná volání WINHTTP_CALLBACK_STATUS_FLAG_CERT_CN_INVALID . |
| SECURITY_FLAG_IGNORE_CERT_DATE_INVALID | Povolí neplatné datum certifikátu, tj. platnost certifikátu, jehož platnost vypršela nebo ještě není platná. Pokud je tento příznak nastavený, aplikace neobdrží WINHTTP_CALLBACK_STATUS_FLAG_CERT_DATE_INVALID zpětné volání. |
| SECURITY_FLAG_IGNORE_UNKNOWN_CA | Povolí neplatnou certifikační autoritu. Pokud je tento příznak nastavený, aplikace neobdrží zpětná volání WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CA . |
| SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE | Umožňuje vytvořit identitu serveru s certifikátem, který není serverem (například klientský certifikát). |
| SECURITY_FLAG_IGNORE_WEAK_SIGNATURE | Umožňuje ignorování slabého podpisu. Tento příznak je k dispozici v kumulativní aktualizaci pro každý operační systém počínaje systémy Windows 7 a Windows Server 2008 R2. |
| SECURITY_FLAG_SECURE | Používá zabezpečené přenosy. Tato funkce se vrátí pouze v volání WinHttpQueryOption. |
| SECURITY_FLAG_STRENGTH_MEDIUM | Používá střední (56bitové) šifrování. Tato funkce se vrátí pouze v volání WinHttpQueryOption. |
| SECURITY_FLAG_STRENGTH_STRONG | Používá silné (128bitové) šifrování. Tato funkce se vrátí pouze v volání WinHttpQueryOption. |
| SECURITY_FLAG_STRENGTH_WEAK | Používá slabé (40bitové) šifrování. Tato funkce se vrátí pouze v volání WinHttpQueryOption. |
WINHTTP_OPTION_SECURITY_INFO
Retreives the SChannel connection and cipher information for a request.
WINHTTP_OPTION_SECURITY_KEY_BITNESS
Načte celočíselnou hodnotu bez znaménka, která obsahuje sílu šifrování šifrovacího klíče. Větší číslo označuje silnější šifrování šifry.
WINHTTP_OPTION_SEND_TIMEOUT
Nastaví nebo načte dlouhou celočíselnou hodnotu bez znaménka, která obsahuje hodnotu časového limitu v milisekundách, a odešle požadavek nebo zapíše nějaká data. Pokud odeslání požadavku trvá déle, než je časový limit, operace odeslání se zruší. Výchozí časový limit je 30 sekund.
WINHTTP_OPTION_SERVER_CBT
Získá ukazatel na SecPkgContext_Bindings struktury, která určuje token vazby kanálu (CBT).
Token vazby kanálu je vlastnost zabezpečeného přenosového kanálu a slouží k vytvoření vazby ověřovacího kanálu k zabezpečenému přenosovému kanálu. Tento token lze získat pouze touto možností po navázání připojení SSL.
Poznámka:
Předání této možnosti a hodnoty null pro lpBuffer do WinHttpQueryOption vrátí ERROR_INSUFFICIENT_BUFFER a požadovanou velikost bajtu vyrovnávací paměti v parametru lpdwBufferLength . Tato vrácená hodnota velikosti vyrovnávací paměti se dá předat v následném volání dotazu na token vazby kanálu. Tyto kroky jsou nezbytné při zpracování WINHTTP_CALLBACK_STATUS_REQUEST, pokud chcete upravit hlavičky požadavků na základě tokenu vazby kanálu. Upozorňujeme, že systém Windows XP a Vista nepodporují úpravu hlaviček požadavků během tohoto zpětného volání.
WINHTTP_OPTION_SERVER_CERT_CHAIN_CONTEXT
Načte kontext řetězce certifikace serveru. WINHTTP_OPTION_SERVER_CERT_CHAIN_CONTEXT lze předat k získání duplicitního ukazatele na CERT_CHAIN_CONTEXT řetězu certifikátů serveru přijatého během vyjednaného připojení SSL. Klient musí volat CertFreeCertificateContext na vrácený PCCERT_CONTEXT ukazatel, který je vyplněn do vyrovnávací paměti.
WINHTTP_OPTION_SERVER_CERT_CONTEXT
Načte kontext certifikace serveru. WINHTTP_OPTION_SERVER_CERT_CONTEXT lze předat, aby se získal duplicitní ukazatel na kontext certifikátu CERT pro certifikát serveru přijatý během vyjednaného připojení SSL. Klient musí volat CertFreeCertificateContext na vrácený PCCERT_CONTEXT ukazatel, který je vyplněn do vyrovnávací paměti.
WINHTTP_OPTION_SERVER_SPN_USED
Získá hlavní název serveru, který WinHTTP poskytl SSPI během ověřování. Tuto hodnotu řetězce lze předat SspiPromptForCredentials po selhání ověřování.
WINHTTP_OPTION_SPN
Zahrne nebo odebere číslo portu serveru při vytváření hlavního názvu služby (SPN) pro ověřování Kerberos nebo Negotiate Kerberos. Tento příznak je jednou z následujících hodnot:
| termín | Popis |
|---|---|
| WINHTTP_DISABLE_SPN_SERVER_PORT | Odebere číslo portu serveru. |
| WINHTTP_ENABLE_SPN_SERVER_PORT | Obsahuje číslo portu serveru. |
WINHTTP_OPTION_STREAM_ERROR_CODE
Tato možnost se dá dotazovat na popisovač požadavku WinHttp a vrátí kód chyby označený RST_STREAM rámcem přijatým ve streamu HTTP.
WINHTTP_OPTION_TCP_FAST_OPEN
Povolí pro připojení protokol TCP Fast Open.
WINHTTP_OPTION_TCP_KEEPALIVE
Tuto možnost můžete nastavit na popisovač relace WinHttp, aby se na podkladovém soketu povolilo chování protokolu TCP keep-alive. Přebírá tcp_keepalive strukturu.
WINHTTP_OPTION_TLS_FALSE_START
Povolí pro připojení nepravdivé spuštění protokolu TLS.
WINHTTP_OPTION_TCP_PRIORITY_STATUS
Zadejte dotaz na naznačenou prioritu sady soketů TCP pomocí WINHTTP_OPTION_TCP_PRIORITY_HINT. Další podrobnosti najdete v dokumentaci k SIO_SET_PRIORITY_HINT .
WINHTTP_OPTION_TLS_PROTOCOL_INSECURE_FALLBACK
Tuto možnost je možné nastavit u popisovače relace WinHttp a určit, jestli je povolená záložní verze protokolu TLS 1.0, pokud dojde k selhání metody handshake protokolu TLS s novější verzí protokolu.
WINHTTP_OPTION_UNLOAD_NOTIFY_EVENT
Přijme událost, která se nastaví při dokončení posledního zpětného volání pro určitou relaci. Tento příznak musí být použit v popisovači relace. Událost nelze zavřít, dokud ji nenastaví WinHTTP.
WINHTTP_OPTION_UNSAFE_HEADER_PARSING
Tato možnost je vyhrazená pro interní použití a neměla by se volat.
WINHTTP_OPTION_UPGRADE_TO_WEB_SOCKET
Dává zásobníku pokyn, aby spustil proces handshake WebSocket pomocí WinHttpSendRequest. Tato možnost nepřijímá žádné parametry.
WINHTTP_OPTION_URL
Načte řetězcovou hodnotu, která obsahuje úplnou adresu URL staženého prostředku. Pokud původní adresa URL obsahovala nějaká další data, jako jsou vyhledávací řetězce nebo kotvy, nebo pokud bylo volání přesměrováno, adresa URL vrácená se liší od původního. Aplikace by měla předat vyrovnávací paměť s velikostí v bajtech, která je dostatečně velká pro uložení vrácené adresy URL v širokém znaku.
WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS
Přebírá boOL a lze nastavit pouze popisovač relace. Rozšíří se pouze na popisovače vytvořené z popisovače relace po nastavení této možnosti. Pokud je pravda, tato možnost způsobí jako poslední možnost použití přihlašovacích údajů globálního serveru, které byly vloženy z WinInet. Výchozí hodnota pro tuto možnost je NEPRAVDA. Tato možnost vyžaduje klíč registru HKLM\Software\Microsoft\Windows\CurrentVersion\Internet Settings! ShareCredsWithWinHttp. Tento klíč registru není ve výchozím nastavení k dispozici. Když je nastavená, WinINet odešle přihlašovací údaje dolů do WinHTTP. Pokaždé, když WinHttp získá ověřovací výzvu a v aktuálním popisovači nejsou nastavené žádné přihlašovací údaje, použije přihlašovací údaje poskytnuté službou WinINet.
WINHTTP_OPTION_USE_SESSION_SCH_CRED
Umožňuje nastavit, aby se pro všechny koncové body v relaci ve výchozím nastavení používaly jediné přihlašovací údaje místo výchozích přihlašovacích údajů pro jednotlivé koncové body. To může zvýšit výkon snížením režijních nákladů na správu přihlašovacích údajů. Všimněte si, že toto výchozí přihlašovací údaje nebudou mít žádný vliv, pokud je explicitně zadaný klientský certifikát.
WINHTTP_OPTION_USER_AGENT
Nastaví nebo načte řetězec uživatelského agenta na popisovačích zadaných WinHttpOpen a používá se v dalších funkcích WinHttpSendRequest , pokud se nepřepíše hlavičkou přidanou winHttpAddRequestHeaders nebo WinHttpSendRequestRequest. Při načítání uživatelského agenta by aplikace měla předat vyrovnávací paměť s velikostí v bajtech, která je dostatečně velká pro uložení vrácené adresy URL v širokém znaku. Při nastavování uživatelského agenta je velikost vyrovnávací paměti délkou řetězce ve značce a ukončovacím znakem NULL .
WINHTTP_OPTION_USERNAME
Nastaví nebo načte řetězec, který obsahuje uživatelské jméno.
WINHTTP_OPTION_WEB_SOCKET_CLOSE_TIMEOUT
Nastaví čas v milisekundách, po které by měl WinHttpWebSocketClose počkat na dokončení zavření metody handshake. Výchozí hodnota je 10 sekund.
WINHTTP_OPTION_WEB_SOCKET_KEEPALIVE_INTERVAL
Nastaví interval v milisekundách tak, aby přes připojení odesílal paket s udržováním dostupnosti. Výchozí interval je 30000 (30 sekund). Minimální interval je 15000 (15 sekund). Použití WinHttpSetOption k nastavení hodnoty nižší než 15000 se vrátí s ERROR_INVALID_PARAMETER.
Poznámka:
Výchozí hodnota pro WINHTTP_OPTION_WEB_SOCKET_KEEPALIVE_INTERVAL se čte z HKLM:\SOFTWARE\Microsoft\WebSocket\KeepaliveInterval. Pokud hodnota není nastavená, použije se výchozí hodnota 30000. Není možné mít nižší keepalive interval než 15000 milisekund.
WINHTTP_OPTION_WEB_SOCKET_RECEIVE_BUFFER_SIZE
Nastaví nebo načte DWORD, který určuje velikost vyrovnávací paměti pro příjem, která se má použít u připojení WebSocket.
WINHTTP_OPTION_WEB_SOCKET_SEND_BUFFER_SIZE
Nastaví nebo načte DWORD, který určuje velikost vyrovnávací paměti pro odesílání, která se má použít u připojení WebSocket.
WINHTTP_OPTION_WORKER_THREAD_COUNT
Nastaví celočíselnou hodnotu bez znaménka, která určuje počet pracovních vláken, které by fond vláken měl použít pro asynchronní dokončování. Výchozí hodnota této možnosti je nula, která určuje, že počet pracovních vláken se rovná počtu procesorů v systému. Tuto možnost lze nastavit pouze u popisovače NULLHINTERNET před asynchronní operací. Tuto možnost lze nastavit pouze jednou.
Platí pro: Windows 7 a novější; Windows Server 2008 R2 a novější.
WINHTTP_OPTION_WRITE_BUFFER_SIZE
Tato možnost je zastaralá; nemá žádný účinek.
Poznámky
Následující tabulka uvádí příznaky možností zadáním popisovačů, se kterými se můžou pracovat, zda se dají dotazovat a nastavit, a datový typ použitý. Znak "X" označuje, že příznak možnosti je platný pro použití s funkcí nebo popisovačem, zatímco znak "-" určuje, že příznak možnosti je neplatný.
Při pokusu o nastavení nebo dotazování příznaku možnosti ve verzi Windows, která není podporovaná, bude výsledkem ERROR_WINHTTP_INVALID_OPTION.
| Příznak možnosti a datový typ | Popisovač relace | Popisovač požadavku | Možnost dotazu | Nastavit možnost | Minimální verze Windows |
|---|---|---|---|---|---|
| WINHTTP_OPTION_ASSURED_NON_BLOCKING_CALLBACKS BOOL |
X | - | - | X | - |
| WINHTTP_OPTION_AUTOLOGON_POLICY DWORD |
- | X | - | X | - |
| WINHTTP_OPTION_BACKGROUND_CONNECTIONS DWORD |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_CALLBACK LPVOID |
X | X | X | X | - |
| WINHTTP_OPTION_CLIENT_CERT_CONTEXT CERT_CONTEXT |
- | X | - | X | Windows Vista |
| WINHTTP_OPTION_CLIENT_CERT_ISSUER_LIST SecPkgContext_IssuerListInfoEx |
- | X | X | - | Windows Vista |
| WINHTTP_OPTION_CODEPAGE DWORD |
X | - | - | X | - |
| WINHTTP_OPTION_CONFIGURE_PASSPORT_AUTH DWORD |
X | - | - | X | - |
| WINHTTP_OPTION_CONNECT_RETRIES DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_CONNECT_TIMEOUT DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_CONNECTION_INFO WINHTTP_CONNECTION_INFO |
- | X | X | - | - |
| WINHTTP_OPTION_CONNECTION_STATS_V0 TCP_INFO_v0 |
- | X | X | - | Windows 10 verze 1903 |
| WINHTTP_OPTION_CONNECTION_STATS_V1 TCP_INFO_v1 |
- | X | X | - | Windows 10 verze 2004 |
| WINHTTP_OPTION_CONTEXT_VALUE DWORD_PTR |
X | X | X | X | - |
| WINHTTP_OPTION_DECOMPRESSION DWORD |
X | X | - | X | Windows 8.1 |
| WINHTTP_OPTION_DISABLE_CERT_CHAIN_BUILDING BOOL |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_DISABLE_FEATURE DWORD |
- | X | - | X | - |
| WINHTTP_OPTION_DISABLE_SECURE_PROTOCOL_FALLBACK BOOL |
X | - | - | X | Windows 10 verze 1903 |
| WINHTTP_OPTION_DISABLE_STREAM_QUEUE BOOL |
X | X | - | X | Windows 10 verze 1809 |
| WINHTTP_OPTION_ENABLE_FEATURE DWORD |
* | * | - | X | - |
| WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL DWORD |
X | X | - | X | Windows 10 verze 1607 |
| WINHTTP_OPTION_ENABLE_HTTP2_PLUS_CLIENT_CERT_CONTEXT BOOL |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_ENABLETRACING DWORD |
- | - | X | X | - |
| WINHTTP_OPTION_ENCODE_EXTRA BOOL |
X | X | - | X | Windows 10 verze 1803 |
| WINHTTP_OPTION_EXPIRE_CONNECTION není k dispozici |
- | X | - | X | Windows 10 verze 1903 |
| WINHTTP_OPTION_EXTENDED_ERROR DWORD |
X | X | X | - | - |
| WINHTTP_OPTION_FIRST_AVAILABLE_CONNECTION BOOL |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_GLOBAL_PROXY_CREDS WINHTTP_CREDS |
X | X | - | X | - |
| WINHTTP_OPTION_GLOBAL_SERVER_CREDS WINHTTP_CREDS_EX |
X | X | - | X | - |
| WINHTTP_OPTION_HANDLE_TYPE DWORD |
X | X | X | - | - |
| WINHTTP_OPTION_HTTP_PROTOCOL_REQUIRED BOOL |
X | X | - | X | Windows 10 verze 1903 |
| WINHTTP_OPTION_HTTP_PROTOCOL_USED DWORD |
- | X | X | - | Windows 10 verze 1607 |
| WINHTTP_OPTION_HTTP_VERSION HTTP_VERSION_INFO |
X | X | X | X | - |
| WINHTTP_OPTION_HTTP2_KEEPALIVE DWORD |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_HTTP2_PLUS_TRANSFER_ENCODING BOOL |
X | X | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_IGNORE_CERT_REVOCATION_OFFLINE BOOL |
- | X | - | X | Windows 10 verze 2004 |
| WINHTTP_OPTION_IPV6_FAST_FALLBACK BOOL |
X | - | - | X | Windows 10 verze 1903 |
| WINHTTP_OPTION_IS_PROXY_CONNECT_RESPONSE BOOL |
X | X | X | - | - |
| WINHTTP_OPTION_MAX_CONNS_PER_1_0_SERVER DWORD |
X | - | X | X | - |
| WINHTTP_OPTION_MAX_CONNS_PER_SERVER DWORD |
X | - | X | X | - |
| WINHTTP_OPTION_MAX_HTTP_AUTOMATIC_REDIRECTS DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_MAX_HTTP_STATUS_CONTINUE DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_MAX_RESPONSE_DRAIN_SIZE DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_MAX_RESPONSE_HEADER_SIZE DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_PARENT_HANDLE HINTERNET |
X | X | X | - | - |
| WINHTTP_OPTION_PASSPORT_COBRANDING_TEXT LPWSTR |
- | X | X | - | - |
| WINHTTP_OPTION_PASSPORT_COBRANDING_URL LPWSTR |
- | X | X | - | - |
| WINHTTP_OPTION_PASSPORT_RETURN_URL LPVOID |
- | X | X | - | - |
| WINHTTP_OPTION_PASSPORT_SIGN_OUT LPVOID |
X | - | - | X | - |
| WINHTTP_OPTION_PASSWORD LPWSTR |
- | X | X | X | - |
| WINHTTP_OPTION_PROXY WINHTTP_PROXY_INFO |
X | X | X | X | - |
| WINHTTP_OPTION_PROXY_PASSWORD LPWSTR |
- | X | X | X | - |
| WINHTTP_OPTION_PROXY_SPN_USED LPWSTR |
- | X | X | - | - |
| WINHTTP_OPTION_PROXY_USERNAME LPWSTR |
- | X | X | X | - |
| WINHTTP_OPTION_READ_BUFFER_SIZE DWORD |
- | X | X | X | - |
| WINHTTP_OPTION_RECEIVE_PROXY_CONNECT_RESPONSE BOOL |
X | X | - | X | - |
| WINHTTP_OPTION_RECEIVE_RESPONSE_TIMEOUT DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_RECEIVE_TIMEOUT DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_REDIRECT_POLICY DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_REJECT_USERPWD_IN_URL BOOL |
- | X | - | X | - |
| WINHTTP_OPTION_REQUEST_PRIORITY DWORD |
- | X | X | X | - |
| WINHTTP_OPTION_REQUEST_STATS WINHTTP_REQUEST_STATS |
- | X | X | - | Windows 10 verze 1903 |
| WINHTTP_OPTION_REQUEST_TIMES WINHTTP_REQUEST_TIMES |
- | X | X | - | Windows 10 verze 1903 |
| WINHTTP_OPTION_REQUIRE_STREAM_END BOOL |
X | X | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_RESOLUTION_HOSTNAME LPWSTR |
- | X | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_RESOLVE_TIMEOUT DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_SECURE_PROTOCOLS DWORD |
X | - | - | X | - |
| WINHTTP_OPTION_SECURITY_CERTIFICATE_STRUCT WINHTTP_CERTIFICATE_INFO |
- | X | X | - | - |
| WINHTTP_OPTION_SECURITY_FLAGS DWORD |
- | X | X | X | - |
| WINHTTP_OPTION_SECURITY_INFO WINHTTP_SECURITY_INFO |
- | X | X | - | Windows 10 verze 2004 |
| WINHTTP_OPTION_SECURITY_KEY_BITNESS DWORD |
- | X | X | - | - |
| WINHTTP_OPTION_SEND_TIMEOUT DWORD |
X | X | X | X | - |
| WINHTTP_OPTION_SERVER_CBT SecPkgContext_Bindings* |
- | X | X | - | - |
| WINHTTP_OPTION_SERVER_CERT_CHAIN_CONTEXT CERT_CHAIN_CONTEXT |
- | X | X | - | Windows 10 verze 2004 |
| WINHTTP_OPTION_SERVER_CERT_CONTEXT KONTEXT CERTIFIKÁTU |
- | X | X | - | - |
| WINHTTP_OPTION_SERVER_SPN_USED LPWSTR |
- | X | X | - | - |
| WINHTTP_OPTION_SPN DWORD |
- | X | - | X | - |
| WINHTTP_OPTION_STREAM_ERROR_CODE DWORD |
- | X | X | - | Windows 10 verze 21H1 |
| WINHTTP_OPTION_TCP_FAST_OPEN BOOL |
X | - | - | X | Windows 10 verze 2004 |
| WINHTTP_OPTION_TCP_KEEPALIVE tcp_keepalive |
X | - | - | X | Windows 10 verze 2004 |
| WINHTTP_OPTION_TLS_FALSE_START BOOL |
X | - | - | X | Windows 10 verze 2004 |
| WINHTTP_OPTION_TLS_PROTOCOL_INSECURE_FALLBACK BOOL |
X | - | - | X | Windows 10 verze 21H1 |
| WINHTTP_OPTION_UNLOAD_NOTIFY_EVENT HINTERNET |
X | - | - | X | - |
| WINHTTP_OPTION_UNSAFE_HEADER_PARSING DWORD |
- | X | - | X | - |
| WINHTTP_OPTION_UPGRADE_TO_WEB_SOCKET není k dispozici |
- | X | - | X | - |
| WINHTTP_OPTION_URL LPWSTR |
- | X | X | - | - |
| WINHTTP_OPTION_USE_GLOBAL_SERVER_CREDENTIALS BOOL |
X | X | - | X | - |
| WINHTTP_OPTION_USER_AGENT LPWSTR |
X | - | X | X | - |
| WINHTTP_OPTION_USERNAME LPWSTR |
- | X | X | X | - |
| WINHTTP_OPTION_WEB_SOCKET_CLOSE_TIMEOUT DWORD |
- | - | X | X | - |
| WINHTTP_OPTION_WEB_SOCKET_KEEPALIVE_INTERVAL DWORD |
- | - | X | X | - |
| WINHTTP_OPTION_WEB_SOCKET_RECEIVE_BUFFER_SIZE DWORD |
X | X | X | X | Windows 8.1 |
| WINHTTP_OPTION_WEB_SOCKET_SEND_BUFFER_SIZE DWORD |
X | X | X | X | Windows 8.1 |
| WINHTTP_OPTION_WORKER_THREAD_COUNT DWORD |
- | - | - | X | - |
| WINHTTP_OPTION_WRITE_BUFFER_SIZE DWORD |
- | X | X | X | - |
Poznámka:
Informace o systému Windows XP a Windows 2000 naleznete v tématu Run-Time Požadavky.
Požadavky
| Požadavek | Hodnota |
|---|---|
| Minimální podporovaný klient | Windows XP, Windows 2000 Professional s aktualizací SP3 [pouze desktopové aplikace] |
| Minimální podporovaný server | Windows Server 2003, Windows 2000 Server s aktualizací SP3 [pouze desktopové aplikace] |
| Redistribuovatelný | WinHTTP 5.0 a Internet Explorer 5.01 nebo novější v systémech Windows XP a Windows 2000. |
| Záhlaví | Winhttp.h |