IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Le Site de code LFLL inaccessible [Web/Reseaux]


Sujet :

C++Builder

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut Le Site de code LFLL inaccessible
    Bonjour à tous,
    J'ai écrit, il y a quelques années un programmes permettant de connaitre les prévisions
    météorologiques sous forme codée dans les aé&aéroports du monde.
    Ce programme a fonctionné quelques années sans problème.
    Récemment j'ai un message par exemple :
    "Le site de code LFLL est inaccessible.

    Les aéroports sont repérés par un code à 4 lettres.
    LFLL désigne l'aéroport de Lyon Saint Exupery.
    Voilà dans le programme où se trouve l'appel au site :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    swprintf(szTemp,
    	 L"http://tgftp.nws.noaa.gov/data/observations/metar/stations/%s.TXT",
    																		 szCode);
    	 ShowMessage(szTemp);
    	try
    	{
    		uMetar = IdHTTP1->Get(szTemp);
    		ShowMessage(uMetar);
    	}
    	catch(...)
    	{
    		uMetar = L"Erreur";
    		ShowMessage(uMetar);
    	}
    uMetar est un fichier texte, par exemple :
    "2019/06/27 15:30
    LFLL 271530Z 01007KT CAVOK 36/20 Q1019 NOSIG

    Quelqu'un aurait-il une dée expliquant ce disfonctionnement ?
    J'ai pensé que l'antivirus, dans mon cas Kaspersky Total secyrity bloquait l'appel et la lecture d'un fichier Internet.
    Je l'ai désactivé sans résulyat.

  2. #2
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut
    le site a vu son protocole évolué
    il s'agit maintenant de HttPS
    URL: https://tgftp.nws.noaa.gov/data/obse...etar/stations/
    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Merci.
    J'ai chengé l'adresse.
    J'ai encore le mesage d'erreur.
    Je pense que l'utilisation du idHTTP n'est plus correcte.
    Savez vous comment corriger l'utlisation de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    uMetar = IdHTTP1->Get(szTemp);
    ?

  4. #4
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Il faut ajouter le composant Indy de prise en charge de OpenSSL
    tu trouvera sur ce site des exemples en Delphi d'utilisation
    cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  5. #5
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut,
    ci-joint un exemple pour illustrer mon précédent post
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    //le .dfm
    object Form109: TForm109
      Left = 0
      Top = 0
      Caption = 'Form109'
      ClientHeight = 185
      ClientWidth = 635
      Color = clBtnFace
      Font.Charset = DEFAULT_CHARSET
      Font.Color = clWindowText
      Font.Height = -11
      Font.Name = 'Tahoma'
      Font.Style = []
      OldCreateOrder = False
      PixelsPerInch = 96
      TextHeight = 13
      object Button1: TButton
        Left = 160
        Top = 136
        Width = 305
        Height = 25
        Caption = 'Get'
        TabOrder = 0
        OnClick = Button1Click
      end
      object Memo1: TMemo
        Left = 0
        Top = 0
        Width = 635
        Height = 113
        Align = alTop
        TabOrder = 1
        ExplicitWidth = 627
      end
      object IdHTTP1: TIdHTTP
        IOHandler = IdSSLIOHandlerSocketOpenSSL1
        AllowCookies = True
        ProxyParams.BasicAuthentication = False
        ProxyParams.ProxyPort = 0
        Request.ContentLength = -1
        Request.ContentRangeEnd = -1
        Request.ContentRangeStart = -1
        Request.ContentRangeInstanceLength = -1
        Request.Accept = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
        Request.BasicAuthentication = False
        Request.UserAgent = 'Mozilla/3.0 (compatible; Indy Library)'
        Request.Ranges.Units = 'bytes'
        Request.Ranges = <>
        HTTPOptions = [hoForceEncodeParams]
        Left = 64
        Top = 216
      end
      object IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL
        MaxLineAction = maException
        Port = 0
        DefaultPort = 0
        SSLOptions.Mode = sslmUnassigned
        SSLOptions.VerifyMode = []
        SSLOptions.VerifyDepth = 0
        Left = 64
        Top = 144
      end
      object IdAntiFreeze1: TIdAntiFreeze
        Left = 64
        Top = 80
      end
    end
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    // le .H
    //---------------------------------------------------------------------------
     
    #ifndef Unit109H
    #define Unit109H
    //---------------------------------------------------------------------------
    #include <System.Classes.hpp>
    #include <Vcl.Controls.hpp>
    #include <Vcl.StdCtrls.hpp>
    #include <Vcl.Forms.hpp>
    #include <IdBaseComponent.hpp>
    #include <IdComponent.hpp>
    #include <IdHTTP.hpp>
    #include <IdTCPClient.hpp>
    #include <IdTCPConnection.hpp>
    #include <IdIOHandler.hpp>
    #include <IdIOHandlerSocket.hpp>
    #include <IdIOHandlerStack.hpp>
    #include <IdSSL.hpp>
    #include <IdSSLOpenSSL.hpp>
    #include <IdAntiFreeze.hpp>
    #include <IdAntiFreezeBase.hpp>
    //---------------------------------------------------------------------------
    class TForm109 : public TForm
    {
    __published:	// Composants gérés par l'EDI
    	TButton *Button1;
    	TIdHTTP *IdHTTP1;
    	TIdSSLIOHandlerSocketOpenSSL *IdSSLIOHandlerSocketOpenSSL1;
    	TIdAntiFreeze *IdAntiFreeze1;
    	TMemo *Memo1;
    	void __fastcall Button1Click(TObject *Sender);
    private:	// Déclarations utilisateur
    public:		// Déclarations utilisateur
    	__fastcall TForm109(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm109 *Form109;
    //---------------------------------------------------------------------------
    #endif
    et le source
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    //---------------------------------------------------------------------------
     
    #include <vcl.h>
    #pragma hdrstop
     
    #include "Unit109.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm109 *Form109;
    //---------------------------------------------------------------------------
    __fastcall TForm109::TForm109(TComponent* Owner)
    	: TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm109::Button1Click(TObject *Sender)
    {
     
    String szTemp;
    String uMetar;
    wchar_t szCode[5]=L"LFLL";
    szTemp.sprintf(L"https://tgftp.nws.noaa.gov/data/observations/metar/stations/%s.TXT",szCode);
     
     
    	try
    	{
    		Memo1->Lines->Add(IdHTTP1->Get(szTemp));
        }
    	catch(Exception&E)
    	{
    			ShowMessage(E.Message);
    	}
    }
    //---------------------------------------------------------------------------
    j'ai ajouté un composant Memo pour visualiser simplement les résultats

    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Merci.
    Je vais essayer d'en tirer profit.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    J'ai appliqué les recommandations, en particulier j'ai ajouté
    IdSSLIOHandlerSocketOpenSSL

    Ce qui reste bizarre c'est que le programme a fonctionné quelques années sans cet ajout.

    Merci encore

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    Pour finir, j'espère, j'ai eu à nouveau le message que tel site n'était pas accessible.
    J'ai trouvé que c'était Kaspersky qui empèchait le logiciel d'accéder au réseau.
    Heureusement il est possible dans Kaspersky d'autoriser ce logiciel d'accéder au réseau.
    C'est bon à savoir.

  9. #9
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut,
    Le problème ne vient assurément pas de ton antivirus
    ce site a migré en HTTPS comme la plupart des sites de première génération
    le port HTTP (80) du site reste actif mais le serveur web redirige automatiquement la connection vers la version sécurisée du serveur (HTTPS)
    essaye le test suivant pour t'en convaincre
    ouvre dans un browser l'URL :http://tgftp.nws.noaa.gov/data/obser...etar/stations/
    et tu observeras que ton browser est transféré automatiquement vers la versions sécurisée de ce site
    https://tgftp.nws.noaa.gov/data/obse...etar/stations/

    le composant Indy sans dSSLIOHandlerSocketOpenSSL ne pourra fonctionner lors de la redirection et retournera une erreur

    Bien cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    J'avais bien renseigné le site en https.
    Sur Kaspersky, j'ai regardé la gestion des applications.
    Le logiciel "Meteo" n'avais pas le dropit d'accéder aux réseaux.
    J'ai corrigé pour lui donner le droit.
    Ensuite le programme a bien fonctionné.

  11. #11
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut
    désolé d'insister lourdement mais voici les logfiles du composant IndyHttp sans le composant IOhandler

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Résolution du nom d'hôte tgftp.nws.noaa.gov.
    Connexion à 140.90.101.79.
    Connecté.
    Redirected to: https://tgftp.nws.noaa.gov/data/observations/metar/decoded/LFLL.TXT
    Déconnecté.
    Exception Msg: HTTP/1.1 302 Object Moved
    constatations: sans le composant IOhandler une exception est générée car le composant ne sait quoi faire avec la redirection

    log Files avec le composant IOhandler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Résolution du nom d'hôte tgftp.nws.noaa.gov.
    Connexion à 140.90.101.79.
    Redirected to: https://tgftp.nws.noaa.gov/data/observations/metar/decoded/LFLL.TXT
    Déconnecté.
    Résolution du nom d'hôte tgftp.nws.noaa.gov.
    Connexion à 140.90.101.79.
    le résultat de la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Lyon / Satolas, France (LFLL) 45-44N 005-05E 240M
    Jul 03, 2019 - 12:00 PM EDT / 2019.07.03 1600 UTC
    Wind: from the N (350 degrees) at 14 MPH (12 KT):0
    Visibility: greater than 7 mile(s):0
    Temperature: 84 F (29 C)
    Dew Point: 59 F (15 C)
    Relative Humidity: 42%
    Pressure (altimeter): 30.00 in. Hg (1016 hPa)
    ob: LFLL 031600Z 35012KT CAVOK 29/15 Q1016 NOSIG
    cycle: 16
    Ton Programme ne peut fonctionner maintenant qu'avec le composant IdSSLIOHandlerSocket

    bien cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    481
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 481
    Par défaut
    "Ton Programme ne peut fonctionner maintenant qu'avec le composant IdSSLIOHandlerSocket"

    C'est avec le composant IdSSLIOHandlerSocket que j'avais le message "site LFLY inaccessible".
    Et c'est bien Kaspersky Total Security qui bloquait l'accès.
    C'est en autorisant dans Kaspersky ce programme à accéder aux réseaux qu'il a pu accéder au site LFLY.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. PureBasic sur le site Rosetta Code
    Par comtois dans le forum PureBasic
    Réponses: 0
    Dernier message: 25/08/2010, 22h52
  2. Site piraté : code html inséré dans ma page
    Par teraDev dans le forum Sécurité
    Réponses: 24
    Dernier message: 27/05/2009, 19h21
  3. Le site de 1&1 inaccessible
    Par Janitrix dans le forum 1&1
    Réponses: 5
    Dernier message: 31/07/2007, 15h23
  4. Site www.adobe.com inaccessible
    Par jeanphy dans le forum Flash
    Réponses: 6
    Dernier message: 20/01/2007, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo