Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Beheert uw verbinding met een HTTP-server.
Syntaxis
class CHttpConnection : public CInternetConnection
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CHttpConnection::CHttpConnection | Hiermee maakt u een CHttpConnection object. |
Openbare methoden
| Naam | Description |
|---|---|
| CHttpConnection::OpenRequest | Hiermee opent u een HTTP-aanvraag. |
Opmerkingen
HTTP is een van de drie internetserverprotocollen die zijn geïmplementeerd door de MFC WinInet-klassen.
De klasse CHttpConnection bevat een constructor en één lidfunctie, OpenRequest, die verbindingen met een server met een HTTP-protocol beheert.
Als u wilt communiceren met een HTTP-server, moet u eerst een exemplaar van CInternetSession maken en vervolgens een CHttpConnection-object maken. U maakt nooit rechtstreeks een CHttpConnection object. Roep CInternetSession::GetHttpConnection aan, waarmee het CHttpConnection object wordt gemaakt en een aanwijzer naar het object wordt geretourneerd.
Zie het artikel Internetprogrammering met WinInet voor meer informatie over het CHttpConnection werken met de andere MFC-internetklassen. Zie de klassen CGopherConnection en CFtpConnection voor meer informatie over het maken van verbinding met servers met behulp van de andere twee ondersteunde internetprotocollen gopher en FTP.
Overnamehiërarchie
CHttpConnection
Requirements
Koptekst: afxinet.h
CHttpConnection::CHttpConnection
Deze lidfunctie wordt aangeroepen om een CHttpConnection object te maken.
CHttpConnection(
CInternetSession* pSession,
HINTERNET hConnected,
LPCTSTR pstrServer,
DWORD_PTR dwContext);
CHttpConnection(
CInternetSession* pSession,
LPCTSTR pstrServer,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL,
DWORD_PTR dwContext = 1);
CHttpConnection(
CInternetSession* pSession,
LPCTSTR pstrServer,
DWORD dwFlags,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL,
DWORD_PTR dwContext = 1);
Parameterwaarden
pSession
Een aanwijzer naar een CInternetSession-object .
hConnected
Een ingang naar een internetverbinding.
pstrServer
Een aanwijzer naar een tekenreeks met de servernaam.
dwContext
De context-id voor het CInternetConnection object. Zie de sectie Opmerkingen voor meer informatie over dwContext.
nPort
Het nummer waarmee de internetverbinding voor deze verbinding wordt geïdentificeerd.
pstrUserName
Aanwijzer naar een tekenreeks met null-beëindiging waarmee de naam van de gebruiker wordt opgegeven om zich aan te melden. Als NULL is, is de standaardwaarde anoniem.
pstrPassword
Een aanwijzer naar een tekenreeks met null-beëindiging waarmee het wachtwoord wordt opgegeven dat moet worden gebruikt om u aan te melden. Als zowel pstrPassword als pstrUserName NULL zijn, is het standaard anonieme wachtwoord de e-mailadresnaam van de gebruiker. Als pstrPassword NULL of een lege tekenreeks is, maar pstrUserName niet NULL is, wordt een leeg wachtwoord gebruikt. In de volgende tabel wordt het gedrag beschreven voor de vier mogelijke instellingen van pstrUserName en pstrPassword:
| pstrUserName | pstrPassword | Gebruikersnaam verzonden naar FTP-server | Wachtwoord verzonden naar FTP-server |
|---|---|---|---|
| NULL of " " | NULL of " " | "anoniem" | E-mailnaam van gebruiker |
| Niet-NULL-tekenreeks | NULL of " " | pstrUserName | " " |
| NUL | Niet-NULL-tekenreeks | ERROR | ERROR |
| Niet-NULL-tekenreeks | Niet-NULL-tekenreeks | pstrUserName | pstrPassword |
dwFlags
Elke combinatie van de INTERNET_FLAG_* vlaggen. Zie de tabel in de sectie Opmerkingen van CHttpConnection::OpenRequest voor een beschrijving van dwFlags-waarden .
Opmerkingen
U maakt nooit rechtstreeks een CHttpConnection . In plaats daarvan maakt u een object door CInternetSession::GetHttpConnection aan te roepen.
CHttpConnection::OpenRequest
Roep deze lidfunctie aan om een HTTP-verbinding te openen.
CHttpFile* OpenRequest(
LPCTSTR pstrVerb,
LPCTSTR pstrObjectName,
LPCTSTR pstrReferer = NULL,
DWORD_PTR dwContext = 1,
LPCTSTR* ppstrAcceptTypes = NULL,
LPCTSTR pstrVersion = NULL,
DWORD dwFlags = INTERNET_FLAG_EXISTING_CONNECT);
CHttpFile* OpenRequest(
int nVerb,
LPCTSTR pstrObjectName,
LPCTSTR pstrReferer = NULL,
DWORD_PTR dwContext = 1,
LPCTSTR* ppstrAcceptTypes = NULL,
LPCTSTR pstrVersion = NULL,
DWORD dwFlags = INTERNET_FLAG_EXISTING_CONNECT);
Parameterwaarden
pstrVerb
Een aanwijzer naar een tekenreeks die het werkwoord bevat dat in de aanvraag moet worden gebruikt. Als NULL wordt gebruikt, wordt GET gebruikt.
pstrObjectName
Een aanwijzer naar een tekenreeks die het doelobject van het opgegeven werkwoord bevat. Deze tekenreeks is doorgaans een bestandsnaam, een uitvoerbare module of een zoekaanduiding.
pstrReferer
Een aanwijzer naar een tekenreeks waarmee het adres (URL) van het document wordt opgegeven waaruit de URL in de aanvraag (pstrObjectName) is verkregen. Als NULL is, wordt er geen HTTP-header opgegeven.
dwContext
De context-id voor de OpenRequest bewerking. Zie de sectie Opmerkingen voor meer informatie over dwContext.
ppstrAcceptTypes
Een aanwijzer naar een null-beëindigde matrix van LPCTSTR-aanwijzers naar tekenreeksen die aangeven dat inhoudstypen door de client worden geaccepteerd. Als ppstrAcceptTypes NULL is, interpreteren de servers dat de client alleen documenten van het type 'tekst/*' accepteert (dat wil gezegd alleen tekstdocumenten en geen afbeeldingen of andere binaire bestanden). Het inhoudstype is gelijk aan de CGI-variabele CONTENT_TYPE, waarmee het type gegevens wordt geïdentificeerd voor query's die informatie hebben gekoppeld, zoals HTTP POST en PUT.
pstrVersion
Een aanwijzer naar een tekenreeks die de HTTP-versie definieert. Als NULL wordt gebruikt, wordt HTTP/1.0 gebruikt.
dwFlags
Elke combinatie van de INTERNET_ FLAG_* vlaggen. Zie de sectie Opmerkingen voor een beschrijving van mogelijke dwFlags-waarden .
nVerb
Een getal dat is gekoppeld aan het HTTP-aanvraagtype. Dit kan een van de volgende zijn:
| HTTP-aanvraagtype | nVerb-waarde |
|---|---|
| HTTP_VERB_POST | 0 |
| HTTP_VERB_GET | 1 |
| HTTP_VERB_HEAD | 2 |
| HTTP_VERB_PUT | 3 |
| HTTP_VERB_LINK | 4 |
| HTTP_VERB_DELETE | 5 |
| HTTP_VERB_UNLINK | 6 |
Retourwaarde
Een aanwijzer naar het aangevraagde CHttpFile-object .
Opmerkingen
dwFlags kan een van de volgende zijn:
| Internetvlag | Description |
|---|---|
| INTERNET_FLAG_RELOAD | Hiermee wordt een download van het aangevraagde bestand, object of mapbestand van de oorspronkelijke server afgevraagd, niet uit de cache. |
| INTERNET_FLAG_DONT_CACHE | Voegt de geretourneerde entiteit niet toe aan de cache. |
| INTERNET_FLAG_MAKE_PERSISTENT | Voegt de geretourneerde entiteit toe aan de cache als een permanente entiteit. Dit betekent dat standaardcacheopruiming, consistentiecontrole of garbagecollection dit item niet uit de cache kan verwijderen. |
| INTERNET_FLAG_SECURE | Maakt gebruik van veilige transactiesemantiek. Het vertaalt zich in het gebruik van SSL/PCT en is alleen zinvol in HTTP-aanvragen |
| INTERNET_FLAG_NO_AUTO_REDIRECT | Alleen gebruikt met HTTP, geeft aan dat omleidingen niet automatisch moeten worden verwerkt in CHttpFile::SendRequest. |
Overschrijf de dwContext standaardinstelling om de context-id in te stellen op een waarde van uw keuze. De context-id is gekoppeld aan deze specifieke bewerking van het object dat is gemaakt door het CHttpConnectionCInternetSession-object . De waarde wordt geretourneerd naar CInternetSession::OnStatusCallback om de status op te geven van de bewerking waarmee deze wordt geïdentificeerd. Zie het artikel Internet First Steps: WinInet voor meer informatie over de context-id.
Uitzonderingen kunnen worden gegenereerd met deze functie.
Zie ook
CInternetConnection-klasse
Hiërarchiegrafiek
CInternetConnection-klasse
CHttpFile-klasse