मैं पाइथन में एक वेब-आधारित ईमेल क्लाइंट लिख रहा हूं और एक प्रश्न उठ गया है कि किस समय क्षेत्र को ईमेल के "दिनांक" शीर्षलेख को भेजते समय प्रदर्शित किया जाना चाहिए। खंड 3.3 मेंईमेल "हेडर" को प्रेषक का स्थानीय समय या यूटीसी होना चाहिए?
RFC 2822 कहता है:
दिनांक और समय दिन-का-स्थानीय समय व्यक्त करना चाहिए।
यह मेरे लिए संदिग्ध लगता है; सवाल किसके स्थानीय समय है? ईमेल सर्वर, या प्रेषक? स्वाभाविक रूप से मैं प्रेषक (जो कि किसी भी समय क्षेत्र में हो सकता है, और उनकी खाता वरीयताओं में बदला जा सकता है) मान लेगा। जब मैंने पाइथन के email.utils.formatdate फ़ंक्शन को देखा तो यह और भ्रम उत्पन्न हुआ जो कि केवल दो विकल्प प्रदान करता है: यूटीसी या स्थानीय समय (सर्वर का)। मेरे लिए वैकल्पिक टाइमज़ोन निर्दिष्ट करने का कोई विकल्प नहीं दिखता है, या क्या मुझे कुछ याद आ रहा है?
time.mktime(senders_tz_aware_now_datetime.timetuple())
का उपयोग करके प्रारूपित करने के लिए समय सारिणी पास करना यूटीसी दिनांक स्ट्रिंग में परिणाम देता है, जो आरएफसी ऊपर बताता है कि गलत क्या लगता है।
तो कौन सा टाइमज़ोन "दिनांक" होना चाहिए, और उपयुक्त दिनांक स्ट्रिंग बनाने के लिए कोई मानक फ़ंक्शन मौजूद है?
यह ऐसा करने वाला नहीं है, मैं समय सारिणी विधि का उपयोग कर समय क्षेत्र जागरूक डेटाटाइम ऑब्जेक्ट को परिवर्तित कर रहा हूं जिसका अर्थ है is_dst पहले से सेट है। इसके अलावा यह मेरे प्रश्न का उत्तर नहीं देता कि सही दिनांक समय का प्रतिनिधित्व क्या है। – kuhnza
मेरे दिमाग को बदल दिया, आसान तरीका जाओ और आपके पास शाम को एक बियर पीने का समय होगा। – sorin
हाहा मुझे आपकी शैली पसंद है। फिर भी, मैं कुछ प्रकार का विचार प्राप्त करना चाहता हूं कि यह आमतौर पर कैसे संभाला जाता है क्योंकि मुझे लगता है कि इसमें कई ईमेल क्लाइंट्स पर प्रभाव पड़ता है जिन्हें मैंने कभी नहीं सुना है कि परीक्षण करने के लिए समय या संसाधनों का अधिकार है। – kuhnza