Partager via


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 :

Value 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 CInternet Connecter ion 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

Voir aussi

Macros et globals
CInternetException, classe
AfxParseURL