رسائل البريد الإلكتروني ، عنوان مختلف "الرد" عن عنوان المرسل

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

  •  25-09-2019
  •  | 
  •  

سؤال

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

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

يبدو أن هناك فرصة ضئيلة لهذا الخيار لأنه قد يؤدي إلى بعض المشكلات بسبب مرسلي البريد العشوائي (قد يحددون حقل الرد المخصص في بريده وقد لا ينظر المستخدم العام إلى أين يردون).

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

لقد وضعت علامة على Django ، على الرغم من أن هذا لا يرتبط مباشرة بهذا ، حيث سأقوم أخيرًا بتنفيذ هذا من خلال Django.

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

المحلول

في الواقع ، هناك رؤوس موحدة لتحديد رؤوس الاستجابة: http://cr.yp.to/immhf/response.html.

فيما يتعلق بتنفيذ هذا في Django ، توثيق يحتوي على مثال:

from django.core.mail import EmailMessage

email = EmailMessage(
    'Hello',
    'Body goes here',
    'from@example.com',
    ['to1@example.com', 'to2@example.com'],
    ['bcc@example.com'],
    headers = {'Reply-To': 'another@example.com'}
)

هذا حل مشكلتي.

نصائح أخرى

الرد إلى رأس SMTP قياسي.

لا يمكنني العثور على مرجع جيد لذلك في الوقت الحالي ، ولكن تم ذكره في مقالة ويكيبيديا بريد الالكتروني.

تحرير: عثر عليه: RFC 5322, ، القسم 3.6.2

يقول RFC أنه يمكنك تحديد رسائل بريد إلكتروني متعددة وهذا ما كنت أبحث عنه. جاء مع هذا:

from django.core.mail import EmailMessage
headers = {'Reply-To': 'email@one.com;email@two.com'}
msg = EmailMessage(subject, html_content, EMAIL_HOST_USER, email_list, headers=headers)
msg.content_subtype = "html"
msg.send()

يعمل كالسحر. ملاحظة: يتم استيراد eMail_host_user من ملف الإعدادات الخاصة بك وفقًا لإعداد بريد إلكتروني Django Doc. المزيد عن هذا هنا ، ابحث عن "الرد إلى": https://docs.djangoproject.com/en/dev/topics/email/

فيما يلي أيضًا كيفية استخدام الرد إلى

from django.core.mail import EmailMessage

email = EmailMessage(
    'Hello',
    'Body goes here',
    'from@example.com',
    ['to1@example.com', 'to2@example.com'],
    ['bcc@example.com'],
    reply_to=['another@example.com'],
    headers={'Message-ID': 'foo'},
)

اقرأ المزيد في المستندات docs.djangoproject

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