openclassroom Puis-je utiliser JavaScript pour créer un e-mail côté client?




javascript openclassroom (4)

Je veux créer une page Web de créateur de courrier côté client. Je connais les problèmes d'utilisation de l'action mailto dans un format html (pas standard, pas d'application mail par défaut sur le client). Mais la page web n'est pas très importante, et ils s'en fichent beaucoup.

Le mail créé par l'action mailto a la syntaxe suivante:

Sujet: sujet non défini
corps:

param1 = valeur1
param2 = valeur2
.
.
.
paramn = valuen

Puis-je utiliser JavaScript pour formater le courrier comme ceci?

Sujet: XXXXX

Corps: Valeur1; Valeur2; Valeur3 ... ValeurN


Avec javascript seul, ce n'est pas possible .
Javascript n'est pas destiné à faire de telles choses et est gravement paralysé dans la façon dont il peut interagir avec autre chose que le webbrowser dans lequel il vit (pour une bonne raison!).

Pensez-y: un spammeur écrit un site Web avec javascript côté client qui enverra automatiquement des e-mails à des milliers d'adresses e-mail aléatoires. Si les gens devaient aller sur ce site, ils participeraient tous à une arnaque distribuée de masse, avec leur propre ordinateur ... aucune infection ou interaction de l'utilisateur n'est nécessaire!


Vous avez plus ou moins seulement deux alternatives lors de l'envoi de courrier via le navigateur.

  1. faire une page qui prend l'entrée de l'utilisateur, et leur permet d'envoyer le courrier via votre serveur web. Vous avez besoin d'une sorte de script côté serveur pour cela.
  2. utiliser un lien mailto: pour déclencher l'ouverture du client mail enregistré. Cela présente les pièges évidents que vous avez mentionnés et est moins flexible. Il a besoin de moins de travail cependant.

Y at-il une raison pour laquelle vous ne pouvez pas simplement envoyer les données à une page qui gère l'envoi du courrier? Il est assez facile d'envoyer un courriel dans la plupart des langues, donc à moins qu'il y ait une forte raison de le pousser du côté client, je recommanderais cette route.


Vous pouvez créer un mailto-lien et le déclencher en utilisant javascript:

  var mail = "mailto:[email protected]?subject=New Mail&body=Mail text body";  
  var mlink = document.createElement('a');
  mlink.setAttribute('href', mail);
  mlink.click();




email