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

ASP.NET Discussion :

Récupérer le HTML d'une page pour l'envoyer par mail.


Sujet :

ASP.NET

  1. #1
    Membre extrêmement actif
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Points : 1 434
    Points
    1 434
    Par défaut Récupérer le HTML d'une page pour l'envoyer par mail.
    SAlut.

    Alors je dois fabriquer des mail au foramt HTML avec du code dedans pour faire du beau à l'arrivée.

    Je me pose donc une question : comment récupérer du code HTML interprété dans une page, l'envoyer par mail et que la page ne s'affiche pas au moment de l'action.

    Je vasi même être un poil plus précis : l'envoi par mail c'est pas si grave. J'ai développé un service Windows qui s'en charge. L'idée c'est de récupérer ce code et de la mettre dans un champ d'une base de donnée, le service s'occupe du reste.

    Mais voilà, je n'ai aucune idée pour démarrer, je ne vois pas trés bien comment récupérer le code interprété d'une page. PArce que les mails qui qonvt partir sont éléboré par des gens avec des formulaires et des éléments dynamiques, donc il y a un aperçu qui est fait. Et c'est cet aperçu que j'aimerais bien envoyer dans la BDD.

    Merci pour votre aide

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    c'est un truc dans ce genre je pense:
    http://pierrejallais.developpez.com/...bRequestVBNet/

  3. #3
    Membre extrêmement actif
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Points : 1 434
    Points
    1 434
    Par défaut
    Merci pour ton aide.

    ça m'a l'air d'être bon comme truc, mais je n'arraive pas à comprendre comment je récupère la chaine de caractère.

    Pourrais tu m'aiguiller.

    J'ai pris les deux classes que j'ai mis dans un fichier avec un NameSpace. J'arrive à faire les imports de ces deux classes, donc elles m'ont l'air d'être reconnues.

    Mais ensuite je comprend pas commet appeler la bonne méthode pour récupérer le flux sous forme de chaine.
    Pour l'instant j'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Dim rs As New MonProjet.RequestState
    		Dim res As HttpWebRequest = CType(WebRequest.Create("http://monsite/Default.aspx"), HttpWebRequest)
     
    		Dim t As New MonProjet.GetHttpAsync
    		t.GetPage("http://monsite/Default.aspx")
    		logage(t.ToString)
    La fonction logage me sert à écrire dans un fichier texte une chaine de caractère
    Et là, dans le cas précis il me ça :
    21/02/2008 10:59:14 : MonProjet.GetHttpAsync
    Qu'est ce que j'ai loupé ?

    MErci pour ton aide

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    l'opération se fait de manière asynchrone c'est donc le callback que tu récupères ta chaine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Shared Sub ResponseCallback(ByVal ar As IAsyncResult)
            ' Recuperation l'objet etat 
            Dim rs As RequestState = CType(ar.AsyncState, RequestState)
            ' Recuperation de la requete web (object HttpWebRequest)
            Dim req As HttpWebRequest = rs.Request
            ' Recuperation de la reponse web
            Dim resp As HttpWebResponse = CType(req.EndGetResponse(ar), HttpWebResponse)
    
            Dim responseStream As Stream = resp.GetResponseStream()
            Dim sr As StreamReader = New StreamReader(responseStream, Encoding.UTF8)
            Dim strContent As String = sr.ReadToEnd()
            responseStream.Close()
    End Sub

  5. #5
    Membre extrêmement actif
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Points : 1 434
    Points
    1 434
    Par défaut
    Merci.

    Mais je ne suis pas familier de ce genre d'opération, donc j'ai encore du mal à comprendre.

    Donc, la chaine de code HTML se trouve dans la varaible strContent. Mais je fais comment pour la récupérer ?

    Parce que là, on est avec une sub, donc pas de valeur de retour. Alors est ce que je la transforme en Function avec un joli Return ou est ce qu'il y a une subtilité que j'ai loupé ?

    Et puis surtout, je sais pas ce que c'est qu'un callback, j'ai lu peu al doc, amis c'est trés obscur pour l'instant.

    Merci pour ton aide.

Discussions similaires

  1. Récupérer code html d'une page
    Par nicerico dans le forum Langage
    Réponses: 1
    Dernier message: 20/06/2014, 12h53
  2. Récupérer des données d'une page pour les récupérer sur une autre
    Par didpoy dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 17/06/2014, 17h58
  3. Récupérer source HTML d'une page web
    Par crazyman8 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 04/01/2014, 18h49
  4. [API HTML5] Récupérer le flux d'une webcam pour l'envoyer via websocket
    Par scandinave dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/08/2013, 10h53
  5. Réponses: 2
    Dernier message: 26/06/2012, 13h40

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