Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Néhány kivételtől eltekintve WinINet a WinHTTP szuperhalmaza. Ha a kettő közül választ, a WinINet kell használnia, kivéve, ha olyan szolgáltatáson vagy szolgáltatásszerű folyamaton szeretne futni, amely megszemélyesítést és munkamenet-elkülönítést igényel.
Funkciók összehasonlítása
| Funkció | WinINet | WinHTTP |
|---|---|---|
| hitelesítési adatok gyorsítótára. A Windows Internet Explorerben az összes beépített alkalmazás automatikusan lekérheti a hitelesítő adatokat. Azt is lehetővé teszi, hogy az Internet Exploreren kívül futó alkalmazások csak egyszer kérhessenek/adjanak meg hitelesítő adatokat a kiszolgálóhoz. Ettől kezdve a kérések automatikusak. | igen | Nem |
| Hitelesítő adatok kérése. Olyan API-t biztosít, amely lehetővé teszi, hogy a hívó kód hitelesítő adatokat kérjen a felhasználótól. | igen | Nem |
| FTP | igen | Nem |
| Autodial/RAS-támogatás. Ez régi funkció. Használja inkább a Távoli elérés funkciót. | igen | Nem |
| zónák. Automatikus integráció az Internet Explorer biztonsági zónáival. | igen | Nem |
| IDNA-támogatás. Az IDNA RFC/Punycode integrált támogatása. | igen | igen |
| Cookie Jar API-k. Az állandó és nem állandó cookie-k támogatottak. Bármely alkalmazás vagy szkript használhatja ezt a böngészővel megegyező cookie-k megtekintésére. | igen | Nem |
| Az IE védett módjának támogatása | igen | Nem |
| dekompressziós támogatás. Gzip és deflate tömörítési séma támogatása. | igen | igen |
| a darabolt feltöltés támogatása. A klienskódnak kell elvégeznie a darabolást. | Nem | igen |
| SOCKS4 (SOCKS 4-es verzió) támogatja. Nem tartalmazza a v4a-t. | igen | Nem |
| SOCKS5 (SOCKS 5-ös verzió) támogatja a | Nem | Nem |
| kétirányú küldés és fogadás | Nem | Nem |
| átfedésben lévő I/O- | Nem | Nem |
| fájlséma támogatása. Fájlsémával rendelkező proxyszkriptekhez hasznos. | igen | Nem |
| InternetOpenUrl. Egyszerűsített kód egy URL-cím megnyitásához. | igen | Nem |
| Szolgáltatástámogatás. Futtatható szolgáltatásból vagy szolgáltatásfiókból. | Nem | igen |
| munkamenet-elkülönítés. A különálló munkamenetek nem befolyásolják egymást. | Nem | igen |
| megszemélyesítés. Akkor is meghívható, ha a szál egy másik felhasználót személyesít meg. | Nem | igen |
Kapcsolódó témakörök
Gyors döntési útmutató
Ezzel a folyamatábra használatával válassza ki a megfelelő HTTP-ügyfélvermet:
-
A kódja Windows-szolgáltatásban, rendszerfolyamatban vagy megszemélyesített környezetben fut?
- Igen → WinHTTP használata.
-
A kódja egy olyan asztali alkalmazás, amelynek szüksége van a felhasználó Internetbeállítások (IE) proxybeállításaira, cookie-jaira vagy hitelesítőadat-kéréseire?
- Igen → WinINet használata.
-
Modern C++ asztali vagy UWP/WinUI-alkalmazást fejleszt?
- Igen → használja a Windows.Web.Http elemet (C++/WinRT a Windows.Web.Http névtéren keresztül).
-
.NET alkalmazást ír?
- Igen → a System.Net.Http.HttpClient használatát.
-
Platformfüggetlen kompatibilitásra van szüksége?
- Igen, → Használjon libcurl vagy hasonló hordozható tárat.
Note
Mikor érdemes sem a WinINetet, sem a WinHTTP-t használni – Ha új alkalmazást hoz létre, és nem igényel régi Win32-integrációt, válassza a fent felsorolt modern alternatívákat. Egyszerűbb API-kat és jobb aszinkron támogatást nyújtanak. Néhány alternatíva további előnyöket is kínál: a libcurl és .NET HttpClient platformfüggetlen; A TLS 1.3 rendelkezésre állása a mögöttes TLS-veremtől és operációsrendszer-konfigurációtól függ. A WinHTTP/WinINet használatát tartsa fenn azokra az esetekre, amelyek kifejezetten Win32-szolgáltatások támogatását, a böngésző hitelesítő adatainak megosztását vagy a proxyval való mély integrációt igénylik.
Important
Biztonsági emlékeztető – Függetlenül attól, hogy melyik HTTP-vermet választja, soha ne tiltsa le a TLS-tanúsítványok érvényesítését éles környezetben. A WinHTTP és a WinINet egyaránt lehetővé teszi, hogy jelzők használatával figyelmen kívül hagyja a tanúsítványhibákat, de ezzel közbeékelődéses (man-in-the-middle) támadásoknak teszi ki az alkalmazását.