CHttpConnection, classe
Gère votre connexion à un serveur HTTP.
Syntaxe
class CHttpConnection : public CInternetConnection
Membres
Constructeurs publics
Nom | Description |
---|---|
CHttpConnection ::CHttpConnection | Crée un objet CHttpConnection . |
Méthodes publiques
Nom | Description |
---|---|
CHttpConnection ::OpenRequest | Ouvre une requête HTTP. |
Notes
HTTP est l’un des trois protocoles de serveur Internet implémentés par les classes WinInet MFC.
La classe CHttpConnection
contient un constructeur et une fonction membre, OpenRequest, qui gère les connexions à un serveur avec un protocole HTTP.
Pour communiquer avec un serveur HTTP, vous devez d’abord créer une instance de CInternetSession, puis créer un objet CHttpConnection . Vous ne créez jamais d’objet CHttpConnection
directement ; appelez plutôt CInternetSession ::GetHttpConnection, qui crée l’objet CHttpConnection
et retourne un pointeur vers celui-ci.
Pour en savoir plus sur CHttpConnection
l’utilisation des autres classes Internet MFC, consultez l’article Programmation Internet avec WinInet. Pour plus d’informations sur la connexion à des serveurs à l’aide des deux autres protocoles Internet pris en charge, gopher et FTP, consultez les classes CGopherConnection et CFtpConnection.
Hiérarchie d'héritage
CHttpConnection
Spécifications
En-tête : afxinet.h
CHttpConnection ::CHttpConnection
Cette fonction membre est appelée pour construire un CHttpConnection
objet.
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);
Paramètres
pSession
Pointeur vers un objet CInternetSession .
hConnected
Handle vers une connexion Internet.
pstrServer
Pointeur vers une chaîne contenant le nom du serveur.
dwContext
Identificateur de contexte de l’objet CInternetConnection
. Pour plus d’informations sur dwContext, consultez la section Remarques .
nPort
Numéro qui identifie le port Internet pour cette connexion.
pstrUserName
Pointeur vers une chaîne terminée par null qui spécifie le nom de l’utilisateur à connecter. Si la valeur est NULL, la valeur par défaut est anonyme.
pstrPassword
Pointeur vers une chaîne terminée par null qui spécifie le mot de passe à utiliser pour se connecter. Si pstrPassword et pstrUserName sont NULL, le mot de passe anonyme par défaut est le nom de messagerie de l’utilisateur. Si pstrPassword a la valeur NULL ou une chaîne vide, mais pstrUserName n’est pas NULL, un mot de passe vide est utilisé. Le tableau suivant décrit le comportement des quatre paramètres possibles de pstrUserName et pstrPassword :
pstrUserName | pstrPassword | Nom d’utilisateur envoyé au serveur FTP | Mot de passe envoyé au serveur FTP |
---|---|---|---|
NULL ou « » | NULL ou « » | « anonyme » | Nom de l’adresse e-mail de l’utilisateur |
Chaîne non NULL | NULL ou « » | pstrUserName | " " |
NULL | Chaîne non NULL | ERROR | ERROR |
Chaîne non NULL | Chaîne non NULL | pstrUserName | pstrPassword |
dwFlags
Toute combinaison des indicateurs INTERNET_FLAG_*
. Consultez le tableau de la section Notes de CHttpConnection ::OpenRequest pour obtenir une description des valeurs dwFlags .
Notes
Vous ne créez jamais directement.CHttpConnection
Au lieu de cela, vous créez un objet en appelant CInternetSession ::GetHttpConnection.
CHttpConnection ::OpenRequest
Appelez cette fonction membre pour ouvrir une connexion HTTP.
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);
Paramètres
pstrVerb
Pointeur vers une chaîne contenant le verbe à utiliser dans la requête. Si la valeur EST NULL, « GET » est utilisé.
pstrObjectName
Pointeur vers une chaîne contenant l’objet cible du verbe spécifié. Cette chaîne est généralement un nom de fichier, un module exécutable ou un spécificateur de recherche.
pstrRefererer
Pointeur vers une chaîne qui spécifie l’adresse (URL) du document à partir duquel l’URL de la requête (pstrObjectName) a été obtenue. Si la valeur est NULL, aucun en-tête HTTP n’est spécifié.
dwContext
Identificateur de contexte de l’opération OpenRequest
. Pour plus d’informations sur dwContext, consultez la section Remarques.
ppstrAcceptTypes
Pointeur vers un tableau null de pointeurs LPCTSTR vers des chaînes indiquant les types de contenu acceptés par le client. Si ppstrAcceptTypes a la valeur NULL, les serveurs interprètent que le client accepte uniquement les documents de type « text/* » (autrement dit, seuls les documents texte et non les images ou d’autres fichiers binaires). Le type de contenu est équivalent à la variable CGI CONTENT_TYPE, qui identifie le type de données pour les requêtes qui ont joint des informations, telles que HTTP POST et PUT.
pstrVersion
Pointeur vers une chaîne définissant la version HTTP. Si la valeur EST NULL, « HTTP/1.0 » est utilisée.
dwFlags
Combinaison des indicateurs INTERNET_ FLAG_*. Consultez la section Remarques pour obtenir une description des valeurs dwFlags possibles.
nVerb
Nombre associé au type de requête HTTP. Il peut s'agir d'une des méthodes suivantes :
Type de requête HTTP | Valeur nVerb |
---|---|
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 |
Valeur de retour
Pointeur vers l’objet CHttpFile demandé.
Notes
dwFlags peut être l’un des éléments suivants :
Indicateur Internet | Description |
---|---|
INTERNET_FLAG_RELOAD | Force le téléchargement du fichier, de l’objet ou de la liste de répertoires demandés à partir du serveur d’origine, et non à partir du cache. |
INTERNET_FLAG_DONT_CACHE | N’ajoute pas l’entité retournée au cache. |
INTERNET_FLAG_MAKE_PERSISTENT | Ajoute l’entité retournée au cache en tant qu’entité persistante. Cela signifie que le nettoyage du cache standard, la vérification de cohérence ou le garbage collection ne peuvent pas supprimer cet élément du cache. |
INTERNET_FLAG_SECURE | Utilise la sémantique des transactions sécurisées. Il se traduit par l’utilisation de SSL/PCT et n’est significatif que dans les requêtes HTTP |
INTERNET_FLAG_NO_AUTO_REDIRECT | Utilisé uniquement avec HTTP, spécifie que les redirections ne doivent pas être gérées automatiquement dans CHttpFile ::SendRequest. |
Remplacez la dwContext
valeur par défaut pour définir l’identificateur de contexte sur une valeur de votre choix. L’identificateur de contexte est associé à cette opération spécifique de l’objet CHttpConnection
créé par son objet CInternetSession . La valeur est retournée à CInternetSession ::OnStatusCallback pour fournir l’état de l’opération avec laquelle elle est identifiée. Pour plus d’informations sur l’identificateur de contexte, consultez l’article Sur Internet First Steps : WinInet .
Les exceptions peuvent être levées avec cette fonction.
Voir aussi
CInternetConnection, classe
Graphique hiérarchique
CInternetConnection, classe
CHttpFile, classe