Analyse d’URL Internet globals et helpers
Lorsqu’un client envoie une requête au serveur Internet, vous pouvez utiliser l’une des globals d’analyse d’URL pour extraire des informations sur le client. Les fonctions d’assistance fournissent d’autres fonctionnalités Internet.
Objet Globals d'analyse des URL Internet
Nom | Description |
---|---|
AfxParseURL | Analyse une chaîne d’URL et retourne le type de service et ses composants. |
AfxParseURLEx | Analyse une chaîne d’URL et retourne le type de service et ses composants, ainsi que la fourniture du nom d’utilisateur et du mot de passe. |
Autres helpers Internet
Nom | Description |
---|---|
AfxThrowInternetException | Lève une exception liée à la connexion Internet. |
AfxGetInternetHandleType | Détermine le type d’un handle Internet. |
AfxParseURL
Ce global est utilisé dans CInternetSession ::OpenURL.
BOOL AFXAPI AfxParseURL(
LPCTSTR pstrURL,
DWORD& dwServiceType,
CString& strServer,
CString& strObject,
INTERNET_PORT& nPort);
Paramètres
pstrURL
Pointeur vers une chaîne contenant l’URL à analyser.
dwServiceType
Indique le type de service Internet. Les valeurs possibles sont les suivantes :
AFX_INET_SERVICE_FTP
AFX_INET_SERVICE_HTTP
AFX_INET_SERVICE_HTTPS
AFX_INET_SERVICE_GOPHER
AFX_INET_SERVICE_FILE
AFX_INET_SERVICE_MAILTO
AFX_INET_SERVICE_NEWS
AFX_INET_SERVICE_NNTP
AFX_INET_SERVICE_TELNET
AFX_INET_SERVICE_WAIS
AFX_INET_SERVICE_MID
AFX_INET_SERVICE_CID
AFX_INET_SERVICE_PROSPERO
AFX_INET_SERVICE_AFS
AFX_INET_SERVICE_UNK
strServer
Premier segment de l’URL suivant le type de service.
strObject
Objet auquel l’URL fait référence (peut être vide).
nPort
Déterminé à partir des parties Serveur ou Objet de l’URL, le cas échéant.
Valeur de retour
Différent de zéro si l’URL a été analysée avec succès ; sinon, 0 s’il est vide ou ne contient pas de type de service Internet connu.
Notes
Il analyse une chaîne d’URL et retourne le type de service et ses composants.
Par exemple, AfxParseURL
analyse les URL du formulaire service://server/dir/dir/object.ext:port et retourne ses composants stockés comme suit :
strServer == « server »
strObject == « /dir/dir/object/object.ext »
nPort == #port
dwServiceType == #service
Remarque
Pour appeler cette fonction, votre projet doit inclure AFXINET.H.
Spécifications
En-tête afxinet.h
AfxParseURLEx
Cette fonction globale est la version étendue d’AfxParseURL et est utilisée dans CInternetSession ::OpenURL.
BOOL AFXAPI AfxParseURLEx(
LPCTSTR pstrURL,
DWORD& dwServiceType,
CString& strServer,
CString& strObject,
INTERNET_PORT& nPort,
CString& strUsername,
CString& strPassword,
DWORD dwFlags = 0);
Paramètres
pstrURL
Pointeur vers une chaîne contenant l’URL à analyser.
dwServiceType
Indique le type de service Internet. Les valeurs possibles sont les suivantes :
AFX_INET_SERVICE_FTP
AFX_INET_SERVICE_HTTP
AFX_INET_SERVICE_HTTPS
AFX_INET_SERVICE_GOPHER
AFX_INET_SERVICE_FILE
AFX_INET_SERVICE_MAILTO
AFX_INET_SERVICE_NEWS
AFX_INET_SERVICE_NNTP
AFX_INET_SERVICE_TELNET
AFX_INET_SERVICE_WAIS
AFX_INET_SERVICE_MID
AFX_INET_SERVICE_CID
AFX_INET_SERVICE_PROSPERO
AFX_INET_SERVICE_AFS
AFX_INET_SERVICE_UNK
strServer
Premier segment de l’URL suivant le type de service.
strObject
Objet auquel l’URL fait référence (peut être vide).
nPort
Déterminé à partir des parties Serveur ou Objet de l’URL, le cas échéant.
strUsername
Référence à un CString
objet contenant le nom de l’utilisateur.
strPassword
Référence à un CString
objet contenant le mot de passe de l’utilisateur.
dwFlags
Indicateurs qui contrôlent l’analyse de l’URL. Il peut s’agir d’une combinaison des valeurs suivantes :
Valeur | Signification |
---|---|
ICU_DECODE | Convertissez les séquences d’échappement %XX en caractères. |
ICU_NO_ENCODE | Ne convertissez pas de caractères non sécurisés en séquence d’échappement. |
ICU_NO_META | Ne supprimez pas les séquences méta (telles que « \ ». » et « \ .. ») de l’URL. |
ICU_ENCODE_SPACES_ONLY | Encoder des espaces uniquement. |
ICU_BROWSER_MODE | N’encodez pas ou décodez les caractères après « # » ou « » et ne supprimez pas l’espace blanc de fin après « ». Si cette valeur n’est pas spécifiée, l’URL entière est encodée et l’espace blanc de fin est supprimé. |
Si vous utilisez la valeur par défaut de MFC, qui n’est pas un indicateur, la fonction convertit tous les caractères et séquences de méta non sécurisés (comme \.,\ .., et \...) en séquences d’échappement.
Valeur de retour
Différent de zéro si l’URL a été analysée avec succès ; sinon, 0 s’il est vide ou ne contient pas de type de service Internet connu.
Notes
Il analyse une chaîne d’URL et retourne le type de service et ses composants, ainsi que le nom et le mot de passe de l’utilisateur. Les indicateurs indiquent comment les caractères non sécurisés sont gérés.
Remarque
Pour appeler cette fonction, votre projet doit inclure AFXINET.H.
Spécifications
En-tête afxinet.h
AfxGetInternetHandleType
Utilisez cette fonction globale pour déterminer le type d’un handle Internet.
Syntaxe
DWORD AFXAPI AfxGetInternetHandleType( HINTERNET hQuery );
Paramètres
requête hQuery
Handle vers une requête Internet.
Valeur de retour
Tous les types de service Internet définis par WININET.H. Consultez la section Remarques pour obtenir la liste de ces services Internet. Si le handle a la valeur NULL ou n’est pas reconnu, la fonction retourne AFX_INET_SERVICE_UNK.
Notes
La liste suivante inclut les types Internet possibles retournés par AfxGetInternetHandleType
.
INTERNET_HANDLE_TYPE_INTERNET
INTERNET_HANDLE_TYPE_CONNECT_FTP
INTERNET_HANDLE_TYPE_CONNECT_GOPHER
INTERNET_HANDLE_TYPE_CONNECT_HTTP
INTERNET_HANDLE_TYPE_FTP_FIND
INTERNET_HANDLE_TYPE_FTP_FIND_HTML
INTERNET_HANDLE_TYPE_FTP_FILE
INTERNET_HANDLE_TYPE_FTP_FILE_HTML
INTERNET_HANDLE_TYPE_GOPHER_FIND
INTERNET_HANDLE_TYPE_GOPHER_FIND_HTML
INTERNET_HANDLE_TYPE_GOPHER_FILE
INTERNET_HANDLE_TYPE_GOPHER_FILE_HTML
INTERNET_HANDLE_TYPE_HTTP_REQUEST
Remarque
Pour appeler cette fonction, votre projet doit inclure AFXINET.H.
Spécifications
En-tête : afxinet.h
AfxThrowInternetException
Lève une exception Internet.
Syntaxe
void AFXAPI AfxThrowInternetException( DWORD dwContext, DWORD dwError = 0 );
Paramètres
dwContext
Identificateur de contexte de l’opération qui a provoqué l’erreur. La valeur par défaut de dwContext est spécifiée à l’origine dans CInternetSession et est passée aux classes dérivées de CInternetConnection et CInternetFile. Pour les opérations spécifiques effectuées sur une connexion ou un fichier, vous remplacez généralement la valeur par défaut par un dwContext de votre choix. Cette valeur est ensuite retournée à CInternetSession ::OnStatusCallback pour identifier l’état de l’opération spécifique.
dwError
Erreur qui a provoqué l’exception.
Notes
Vous êtes responsable de la détermination de la cause en fonction du code d’erreur du système d’exploitation.
Remarque
Pour appeler cette fonction, votre projet doit inclure AFXINET.H.
Spécifications
En-tête : afxinet.h