هل يمكنني استخدام JavaScript لإنشاء بريد إلكتروني من جانب العميل؟

StackOverflow https://stackoverflow.com/questions/7592

  •  08-06-2019
  •  | 
  •  

سؤال

أرغب في إنشاء صفحة ويب لمنشئ البريد من جانب العميل.أعرف مشكلات استخدام إجراء mailto في نموذج html (غير قياسي، ولم يتم تعيين تطبيق بريد افتراضي على العميل).لكن صفحة الويب ليست مهمة جدًا، ولا يهتمون بها كثيرًا.

يحتوي البريد الذي تم إنشاؤه بواسطة إجراء mailto على الصيغة التالية:

موضوع:موضوع غير محدد
جسم:

param1=value1
param2=value2
.
.
.
param=valuen

هل يمكنني استخدام JavaScript لتنسيق البريد بهذا الشكل؟

الموضوع:XXXXXX

جسم:Value1;Value2;Value3...ValueN

هل كانت مفيدة؟

المحلول

ما استخدمناه في المشروع هو نافذة منبثقة تفتح بريدًا:الارتباط، إنها الطريقة الوحيدة التي وجدناها لإنشاء بريد داخل عميل البريد الافتراضي الذي يعمل مع جميع عملاء البريد (على الأقل جميع عملائنا المستخدمين).

var addresses = "";//between the speech mark goes the receptient. Seperate addresses with a ;
var body = ""//write the message text between the speech marks or put a variable in the place of the speech marks
var subject = ""//between the speech marks goes the subject of the message
var href = "mailto:" + addresses + "?"
         + "subject=" + subject + "&"
         + "body=" + body;
var wndMail;
wndMail = window.open(href, "_blank", "scrollbars=yes,resizable=yes,width=10,height=10");
if(wndMail)
{
    wndMail.close();    
}

نصائح أخرى

لديك أكثر أو أقل بديلين فقط عند إرسال البريد عبر المتصفح..

  1. أنشئ صفحة تتلقى مدخلات المستخدم، وتسمح له بإرسال البريد عبر خادم الويب الخاص بك.أنت بحاجة إلى نوع من البرمجة النصية من جانب الخادم لهذا الغرض.
  2. استخدم ميلتو:رابط لتحريك فتح عميل البريد المسجل للمستخدمين.يحتوي هذا على المزالق الواضحة التي ذكرتها، وهو أقل مرونة.على الرغم من أنها تحتاج إلى عمل أقل.

مع جافا سكريبت وحدها، انها غير ممكن.
ليس المقصود من جافا سكريبت القيام بمثل هذه الأشياء، وهي معطلة بشدة في الطريقة التي يمكنها بها التفاعل مع أي شيء آخر غير متصفح الويب الذي تعيش فيه (لسبب وجيه!).

فكر في الأمر:يقوم مرسلي البريد العشوائي بكتابة موقع ويب باستخدام جافا سكريبت من جانب العميل والذي سيتم إرساله تلقائيًا بالبريد إلى الآلاف من عناوين البريد الإلكتروني العشوائية.إذا ذهب الأشخاص إلى هذا الموقع، فسيشاركون جميعًا في عملية احتيال بريدية جماعية موزعة، باستخدام أجهزة الكمبيوتر الخاصة بهم...لا حاجة للعدوى أو تفاعل المستخدم!

يمكنك إنشاء رابط mailto وإطلاقه باستخدام جافا سكريبت:

  var mail = "mailto:buddy@mail.com?subject=New Mail&body=Mail text body";  
  var mlink = document.createElement('a');
  mlink.setAttribute('href', mail);
  mlink.click();

هل هناك سبب يمنعك من إرسال البيانات إلى الصفحة التي تتولى إرسال البريد؟من السهل جدًا إرسال بريد إلكتروني بمعظم اللغات، لذا ما لم يكن هناك سبب قوي لدفعه إلى جانب العميل، فإنني أوصي بهذا الطريق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top