• # Sock HTTP sur IceWarp version : 4.1 (Eclaircis du probleme/desir)

    Posté par . En réponse au message Sock HTTP sur IceWarp version : 4.1. Évalué à 1.

    Le problème : Acquérir le code source de la page du serveur distant, le code « html » et non pas le header du serveur. Exemple avec TELNET :

    ==========================EXEMPLE==========================
    frenchnet@ipnode:~$ telnet mail.networksolutionscanada.ca 32000 #ENTER
    Trying 38.112.124.163...
    Connected to mail.networksolutionscanada.ca.
    Escape character is '^]'.
    GET /mail/calendar_friends.html HTTP/1.0 #INSETION DE “GET /mail/calendar_friends.html HTTP/1.0” ET 2X ENTER

    HTTP/1.0 200 OK #DEBUT ENTETE DU SERVEUR (ce que j’obtiens déjà avec mon code)
    Server: IceWarp/4.1
    Date: 2006年10月20日 02:07:33 -0600
    Content-type: text/html
    Expires: 2006年10月20日 08:07:33 GMT
    Pragma: no-cache #FIN ENTETE DU SERVEUR (ce que j’obtiens déjà avec mon code)


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> #DEBUT DU CODE HTML (CE QUE J&#8217;AIMERAIS AVOIR)
    <HTML>
    <HEAD>
    <TITLE>Web Mail</TITLE>
    <meta http-equiv="content-type" content="text/html; charset=us-ascii">
    <LINK REL="StyleSheet" HREF="skins/Outlook2003/login.css" type="text/css">

    <script language="JavaScript" src="inc/cipher/sha1.js"></script>

    </HEAD>
    &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;#DECOUPAGE DE LA LONGUEUR
    </BODY>
    <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
    if (top.length != self.length)
    {
    var isskin;
    isskin = parent.document.getElementById("foldermenu");
    if(isskin) top.location.href = self.location.href;
    }
    document.login.username.focus();
    </SCRIPT>
    </HTML>Connection closed by foreign host. #FIN DU CODE HTML (CE QUE J&#8217;AIMERAIS AVOIR)
    frenchnet@ipnode:~$
    ==========================EXEMPLE==========================
    J&#8217;aimerais arriver à recevoir grâce a mon sock donc entre DEBUT/FIN DU CODE HTML parce que je ne reçois que l&#8217;ente du serveur !? Ceci est mon problème majeur dans ce code !!

    Pour le code exotique, je suis désolé j&#8217;ai fait tellement de teste de toute les manières que j&#8217;approuve le faite dire qu&#8217;il est rendu « exotique »

    if(strstr(empf_buffer,"Welcome")!=NULL ) permet de réagir si il trouve le mot Welcome(ici) dans empf_buffer.
    empf_buffer Contient les données reçu du serveur après qu&#8217;on lui ait envoyer « snprintf(request,sizeof(request),"GET /mail/calendar_friends.html HTTP/1.0\n\n\r\n",target,port); »

    Voilà pour le petit résumé.
    Donc mon problème :
    1) Avoir le html de l&#8217;url requeté au serveur.
    2) Quand l&#8217;adresse distante retourne aucun header, entête le code reste bloquer.
    3) IceWarp réagissant seulement dans sa version 4.1 de cette manière.

    Solution amicalement souhaité :
    1) Avoir un code ce connectant au serveur distant, récupérant le header (entête) et le corps (contenu html).
    2) Vérifié dans le header (entête) la présence de la ligne : « Server: IceWarp/4.1 »
    3) Une fois la solution 1,2 réaliser il ne reste plus que a vérifier si le corps (contenu html) existe le mot « Welcome »

    Voici donc ce que j&#8217;aimerais faire, et le problème associé.