2017-08-28 3 views
0

Je prédéfinis les champs 'Cc' et 'À' d'un e-mail via un lien mailto: en HTML. Lorsque je sépare les courriers électroniques dans le champ Cc avec une virgule, cela fonctionne dans le client Gmail mais pas dans Outlook. L'inverse est vrai quand je le change en un point-virgule.La séparation des caractères dans le lien de messagerie HTML est différente entre les clients de messagerie

Y a-t-il un caractère de séparation différent que je devrais utiliser?

Répondre

3

La virgule (,) est le caractère correct, selon les spécifications RFC 6068:

to = addr-spec *("," addr-spec)

Cependant, comme il est indiqué dans this Stack Overflow answer, certains utilisateurs peuvent configurer Outlook configuré pour utiliser le semi deux points à la place, ce qui présentera des problèmes:

Même si RFC recommande explicitement une virgule, Microsoft Outlook utilisera le "caractère séparateur de liste" défini dans les paramètres régionaux. Vos liens mailto peuvent ne pas fonctionner correctement pour vos utilisateurs Windows + Outlook dont les systèmes sont configurés avec un séparateur de liste différent tel que les points-virgules. Outlook refusera simplement de diviser les adresses électroniques par des virgules.

Je sais que ce n'est pas la réponse que vous voulez entendre. Vous pouvez configurer Outlook pour rechercher la virgule au lieu du point-virgule, mais c'est quelque chose qui devrait être fait pour chaque utilisateur - pas quelque chose que vous pourriez faire côté serveur ou à partir de votre application. Vous pourrez peut-être coder une vérification pour voir si Outlook est utilisé comme client, mais au-delà, vos options sont limitées.

Sources:

MISE À JOUR:

Comme mentionné par @ Chris, RFC 5322 désigne aussi la virgule comme le séparateur "officiel" entre les bénéficiaires:

to = "To:" address-list CRLF
cc = "Cc:" address-list CRLF
bcc = "Bcc:" [address-list/CFWS] CRLF
address-list = (address *("," address))/obs-addr-list

+1

Son sans doute utile de citer https: //tools.ietf.org/html/rfc5322 aussi bien. 6068 spécifie le format href qui traite principalement de "To" comme cité mais pour CC qui est juste un mais le champ cc lorsqu'il est utilisé est un "hfield" dans la spécification 6068 qui est essentiellement une façon de spécifier un en-tête: " et sont les codages d'un nom et d'une valeur de champ d'en-tête [RFC5322], respectivement. " le format des champs CC est donc spécifié par 5322. Bien entendu, la virgule est toujours utilisée comme séparateur, de sorte que la conclusion est toujours la même et précise. – Chris

+0

Merci @Chris, je vais ajouter cela dans. – freginold