2013-08-21 9 views
12

मैं एक उल्का एप्लिकेशन बनाने रहा हूँ और मैं एमआरटी खातों-पासवर्ड पैकेज एमआरटी खातों-ui-बूटस्ट्रैप-लटकती के साथ ही जोड़ लिया है।खाता पैकेज के साथ मेरा उल्का ऐप एक सत्यापन ईमेल क्यों नहीं भेज रहा है?

मैं loginbuttons जोड़ लिया है ताकि उपयोगकर्ताओं को एक खाता बना सकते हैं और है कि बस ठीक काम करता है। मैं सभी डिफ़ॉल्ट का उपयोग कर रहा हूँ।

सर्वर पर मैं कोड है:

Accounts.config({ 
    sendVerificationEmail: true, 
    forbidClientAccountCreation: false 
}); 

और जब मैं एक नया खाता बनाने के लिए, सर्वर कंसोल प्रिंट:

I20130821-18:31:42.105(-4)? ====== BEGIN MAIL #0 ====== 
I20130821-18:31:42.106(-4)? MIME-Version: 1.0 
I20130821-18:31:42.107(-4)? From: "Meteor Accounts" <[email protected]> 
I20130821-18:31:42.108(-4)? To: [email protected] 
I20130821-18:31:42.108(-4)? Subject: How to verify email address on localhost:3000 
I20130821-18:31:42.109(-4)? Content-Type: text/plain; charset=utf-8 
I20130821-18:31:42.109(-4)? Content-Transfer-Encoding: quoted-printable 
I20130821-18:31:42.109(-4)? Hello, 
I20130821-18:31:42.110(-4)? To verify your account email, simply click the link below. 
I20130821-18:31:42.110(-4)? http://localhost:3000/#/verify-email/C2vJeaDLeMkkWmcRY 
I20130821-18:31:42.111(-4)? Thanks. 
I20130821-18:31:42.111(-4)? ====== END MAIL #0 ====== 

तो यह यह सर्वर से ईमेल भेजता है की तरह लग रहा लेकिन मुझे अपने इनबॉक्स में सत्यापन ईमेल कभी नहीं मिलता है। और मैंने कई बार कोशिश की और यह एक घंटे से अधिक हो गया है! मैंने अपने स्पैम फ़ोल्डर को भी चेक किया। क्या देता है?

अग्रिम धन्यवाद

उत्तर

18

यहाँ देखें: http://docs.meteor.com/#email

MAIL_URL सेट नहीं है (उदाहरण के लिए, जब आपके आवेदन स्थानीय स्तर पर चल रहा है), Email.send मानक आउटपुट के बजाय

को संदेश आउटपुट

मेटियर जैसे वेब सर्वर स्वयं को ईमेल नहीं भेज सकते हैं, उन्हें ऐसा करने के लिए एक एसएमटीपी सर्वर की आवश्यकता है। आपको एक सेट अप करने और MAIL_URL चर के साथ सेट करने की आवश्यकता है।

+1

आह मैं देख रहा हूँ, इसलिए मैं जोड़ने कर 'var MAIL_URL = smtp: //: USERNAME पासवर्ड @ host: port /' पर्यावरण फाइल करने के लिए? मैंने कभी भी env फ़ाइल में नहीं जोड़ा है, मैं यह कैसे कर सकता हूं? – nearpoint

+0

नहीं, आप इसे एक पर्यावरण चर के रूप में सेट अप करते हैं। वैकल्पिक रूप से, आप इसे 'process.env.MAIL_URL = ...' के साथ सेट कर सकते हैं, लेकिन यह एक हैकी विधि है। ': //: USERNAME पासवर्ड @ host: port/निर्यात MAIL_URL = smtp' टर्मिनल में –

+1

आह तो एक वातावरण चर मैं सिर्फ टाइप के रूप में सेट अप करने के लिए? यह इसे मेरे स्थानीय मशीन पर्यावरण में जोड़ देगा, लेकिन अगर मैं हरोकू में तैनात हूं, तो वास्तविक उल्का प्रोजेक्ट में एक विशेष .env फ़ाइल को शामिल करने का कोई तरीका है जो केवल Heroku सर्वर द्वारा पठनीय है? – nearpoint

14

MAIL_URL कॉन्फ़िगर करने के लिए कोर ईमेल पैकेज जोड़ने के लिए भूल नहीं है:

meteor add email 

और फिर, सर्वर साइड:

// server/smtp.js 
Meteor.startup(function() { 
    smtp = { 
    username: 'your_username', // eg: [email protected] 
    password: 'your_password', // eg: 3eeP1gtizk5eziohfervU 
    server: 'smtp.gmail.com', // eg: mail.gandi.net 
    port: 25 
    } 

    process.env.MAIL_URL = 'smtp://' + encodeURIComponent(smtp.username) + ':' + encodeURIComponent(smtp.password) + '@' + encodeURIComponent(smtp.server) + ':' + smtp.port; 
}); 

अधिक पढ़ें: Verify an Email with Meteor Accounts

संबंधित मुद्दे