| |
Membre enregistré 1 357 messages |
|
| Posté le 06 novembre 2025 - 14:58 |
Bonjour, je travaille fort depuis 2 jours pour comprendre un phénomène spécial. Mon appli utilise un champ Affichage HTML. Avant d'afficher un lien WEB dans le champ HTML, je le charge dans une variable HTTPrequete.
Cette façon de faire me permet d'analyser le contenu du lien avant de le faire afficher dans le champ HTML. Voici la partie de mon code qui traite le lien.
cMaRequête est un httpRequête cMaRequête.URL = sURL cMaRequête.IgnoreErreur = httpIgnoreRedirection cMaRéponse est un httpRéponse = HTTPEnvoie(cMaRequête) SI ErreurDétectée ALORS ToastAffiche("erreur2") Erreur(ErreurInfo(errComplet)) FIN sContenu = UTF8VersChaîne(cMaRéponse.Contenu) Info(sContenu)
La majorité des liens fonctionnent parfaitement mais certains lien ne fonctionnent absolument pas. Donc le résultat de cMaRequete me retourne une chaine vide par exemple avec les lien suivant; https://www.tvanouvelles.ca https://mobile.guideautoweb.com https://www.journaldemontreal.com
Pourtant si j'envoie l'un de ces liens dans le champ HTML, les données s'affichent parfaitement. Notez que je n'ai aucune erreur qui s'affiche. Je suppose que le champ HTML exécute une requete HTTP?
Est-ce qu'un bon samaritain pourrait m'aider à comprendre ce phénomène? Merci! |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 357 messages |
|
| Posté le 06 novembre 2025 - 16:20 |
| J'ai oublié de mentionner que le codeEtat de la requete fautive me retourne toujours un 307 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 735 messages |
|
| Posté le 06 novembre 2025 - 19:22 |
Salut Je vois que depuis 2023 tu n'as toujours pas résolu ce souci et j'en suis navrée Essai plutôt la vieille méthode HTTPDonneRésultat et HTTPRequête (fonction)
Sinon accepte de mettre un champ HTML caché dans ta fenêtre qui récupère la page Et ensuite tu traites le contenu comme te la suggéré Ruben Fait des tests et dis nous ce que ça donne |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 357 messages |
|
| Posté le 06 novembre 2025 - 20:29 |
Salut Popoy, les années se suivent et se ressemblent...
Rien n'y fait, j'ai été capable de récupérer l'adresse URL de redirection du lien mais ça tourne en boucle et ça reviens toujours à l'adresse de départ. En ce qui concerne le champ caché, ça fonctionne et le champ affiche la page mais je ne suis toujours pas capable de récupérer le contenu du champ HTML. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 357 messages |
|
| Posté le 06 novembre 2025 - 22:44 |
J'ai finalement trouvé une méthode fonctionnelle. Je transfert le lien WEB dans un champ HTML caché pour que soit correctement affiché le site WEB. Dans l'évenement 'Après chargement de la page HTML' j'insère le code suivant;
codeJS est chaîne = [ var element = document.getElementsByTagName('html'); element[0].innerHTML; ]
HTM_Test.ExécuteJS(codeJS, RecupereContenuJS)
PROCEDURE INTERNE RecupereContenuJS(bSuccès est booléen, ValeurRetour) SI PAS bSuccès Erreur(ErreurInfo()) RETOUR FIN Info(ValeurRetour) FIN
la variable ValeurRetour contient maintenant la source de la page WEB qui est en fait une chaine que je peux analyser à ma guise.
Une fois analysé, je transfert le site dans mon champ HTML visible.
Merci Popoy |
| |
| |
| | | |
|
| | |