يتم التعامل مع عناوين البريد الإلكتروني التي تحتوي على علامات + كأخطاء

كنت أختبر ميزة الدعوة الجماعية لأرى ما ستكون عليه الرسالة المرسلة إلى المستخدمين، واستخدمت بريدي الإلكتروني الشخصي على Gmail مع إضافة علامة +. فشل الاستيراد كما هو موضح أدناه (لقد استبدلت بريدي الإلكتروني الفعلي بـ validaddress).

عناوين البريد الإلكتروني التي تحتوي على علامة + صالحة تمامًا وفقًا لمواصفة RFC 2822، لذا أتوقع أن يسمح Discourse بها.

تم معالجة ملف الدعوة الجماعية للمستخدمين، وتم إرسال 0 دعوة مع وجود خطأ واحد.

إليك السجل:

[2020-12-09 20:40:21 +0000] بريد إلكتروني غير صالح 'validaddress+test@gmail.com

هذا هو التعبير النمطي (regex) الذي نستخدمه لتحليل هذه العناوين، كما أعتقد:

عند تشغيله عبر https://rubular.com/، يظهر بريدًا إلكترونيًا صالحًا تمامًا يحتوي على علامة +.

ومع ذلك، يبدو أن البريد الإلكتروني الذي قدمته قد يحتوي على حرف غير صالح.

'validaddress+test@gmail.com – من المرجح أن علامة ' في البداية هي ما تسببت في فشل ميزة الدعوة الجماعية.

شكرًا لك. من الغريب أنني رأيت علامة الاقتباس هذه في رسالة الخطأ أيضًا وتجاهلتها في البداية. أعرف أن إكسل يفعل ذلك أحيانًا مع النص في الخلية عند تحويله (لقد قمت بتحويل هذا الملف من XLSL إلى CSV للاستيراد)، لكنني تحققت مرتين من ملف الاستيراد (في VS Code) ولم أجد أي علامات اقتباس في البداية.

شكرًا لك على توفير التعبير النمطي وتوضيح أنه يجب السماح به. سأحتاج إلى المزيد من التجريب لمعرفة سبب الفشل. (فشل حتى عندما قمت بحذف هذا المستخدم، وأزلت +test من البريد الإلكتروني، وحاولت إعادة إرسال الدعوة.)

حسب ما أستطيع تحديده، فإن علامة التنصيص الأحادية التي تسبق النص جزء من رسالة الخطأ، وليست جزءًا من ملف الاستيراد الخاص بي. قمتُ بالاستيراد الجماعي لـ 86 عنوان بريد إلكتروني فعلي. وقد ظهرت أخطاء في حالتين فقط (وهو أمر غريب بحد ذاته لأنني قد أرسلت بريدًا إلكترونيًا إلى هذين الشخصين). وقد قمتُ بإزالة عنوان البريد الإلكتروني المحدد من هذا المنشور.

تم معالجة ملف دعوة المستخدمين الجماعي، وتم إرسال 84 دعوة مع وجود خطأين.

إليك سجل الأخطاء:

[2020-12-09 21:34:42 +0000] بريد إلكتروني غير صالح 'Nxxxx@lisg.ae
[2020-12-09 21:34:43 +0000] بريد إلكتروني غير صالح 'sxxx@stemk12.org