2012-11-01 1 views
1

Comme je le sais, mon application de messagerie ne supportait que du texte brut avec des pièces jointes. Je le manipulais d'une manière simple si la liste des pièces jointes est nulle, il suffit d'envoyer le message mime et si la liste d'attchment n'est pas nulle, je créais une partie du corps pour chaque pièce jointe et une partie pour le corps. Les ajouter dans multipart qui est défini dans mime message.Envoi d'un message mime contenant l'une de ces pièces jointes, htmlbody, inline image ou l'ensemble d'entre elles?

Mais maintenant besoin de soutenir la partie html et les images en ligne (où les images seront envoyées en pièce jointe et le corps html sera référence) .Je connais les bases du mime et comment créer les parties du corps pour chaque type de mime. Mais vraiment je ne reçois pas comment créer les parties du corps à l'exécution timw quand je ne sais pas ce que le corps et la liste des pièces jointes contiendra. Par exemple le corps peut contenir seulement le corps de texte ou de corps de HTML ou le corps de html avec la pièce jointe ou le corps de HTML avec l'image en ligne avec l'attachement ou le corps simple avec l'attchment.

Franchement, je ne reçois pas comment traiter la emailbody et liste des pièces jointes pour permuations et les combinaisons mentionnées ci-dessus. (Par exemple un certain temps que je dois créer dessus un message comme multipart/parties mixte du corps containg comme mulipart/alternatif et une autre partie du corps plaine, bla bla ....). Existe-t-il un code standard traitant tous ces scénarios en fonction du contenu du corps et de la liste des pièces jointes. S'il vous plaît pointez-moi dans la bonne direction?

ici est l'ancienne signature de la méthode qui soutenait que le texte brut avec des pièces jointes

public void sendMimeEmail(List toMailAddresses, 
    String fromMailAddress, String body, List<AttachmentData> attachments) {} 

Répondre

0

Je ne pense pas qu'il y ait la magie ici. Vous avez juste besoin de suffisamment de "si" pour couvrir les cas.

+0

Bill. Selon ma compréhension de réaliser cette meilleure façon est d'analyser le corps du message et de voir si la balise html ou balise html avec cid existe. S'il existe, définissez le message MIME comme multipart/alternative ou multipart/related. Ce genre de logique. DROITE? –

+0

Habituellement, je m'attendrais à ce que votre programme sache si le corps du message est destiné à être en HTML ou en texte brut. Si vous devez deviner, c'est à vous de trouver des heuristiques que vous aimez. Collectez-vous le texte du corps du message en tant qu'entrée d'un utilisateur? –

+0

Oui, je collectionne le texte du corps du message en tant qu'entrée d'un utilisateur. Ce que je prévois est de traiter le texte comme html et ensuite faire un message comme alternative afin que les clients de messagerie qui ne supportent pas le texte html puissent ramasser le texte. partie? –

Questions connexes