2016-10-05 137 views
0

我試圖在註冊時向用戶發送驗證電子郵件。我正在使用Accounts.createUser將用戶添加到數據庫,並且在沒有任何電子郵件驗證系統的情況下工作正常。當我嘗試使用Accounts.sendVerificationEmail進行電子郵件驗證時,它不會發送任何電子郵件。我已經設置了MAIL_URL,我正在使用Mailgun。當我嘗試在終端內發送電子郵件時,它按預期發送。我曾嘗試使用此處提供的過程:https://themeteorchef.com/snippets/sign-up-with-email-verification/其中方法是服務器端,然後我使用Meteor.call來調用該方法,但未發送驗證電子郵件。我也嘗試過執行Accounts.onCreateUser()並從內部撥打Accounts.sendVerificationEmail(user._id),但那也不是發送電子郵件。驗證流星應用程序中的電子郵件

在我的服務器代碼,我中啓動功能如下:Accounts.config({sendVerificationEmail: true, forbidClientAccountCreation: false});我也注意到,當我加入任何形式的電子郵件驗證碼服務器端,createUser失敗,並告訴我的用戶名沒有被定義,但作品沒有任何電子郵件驗證,100%如預期。

這裏有一些鏈接到各種來源我一直在努力,才能使用得到這個工作: verify email using accounts.ui package

https://themeteorchef.com/snippets/sign-up-with-email-verification/

Meteor 1.3 verify email when creating user

我也一直在使用流星文檔,但我似乎無法得到它的工作。我還安裝了相關的軟件包(電子郵件,帳戶,帳戶 - 用戶界面)。任何幫助表示讚賞!

+0

你是從客戶端調用 「Accounts.sendVerificationEmail(user._id)」? –

+0

@PankajJatav不,我按照以下鏈接設置:https://themeteorchef.com/snippets/sign-up-with-email-verification/,因爲在流星文檔中'Accounts.sendVerificationEmail()'是一個服務器側功能。我使用'Meteor.call'然後調用服務器端方法。 –

+0

您是否在服務器控制檯上發生錯誤? –

回答

0

感謝@PankajJatav讓我更仔細地閱讀服務器控制檯!對我來說問題是我使用mailgun作爲我的smtp服務。在嘗試實現我的電子郵件驗證系統時,我使用了默認的沙箱域,但沙箱域僅用於測試目的。爲了真正收到郵件,我不得不去郵件槍並作爲授權收件人加入收件人。如果你從一開始就用自己的域名設置mailgun,這應該不成問題。

再次感謝您@PankajJatav

+0

你的歡迎我的朋友:) –