2016-10-05 4 views
0

Ich versuche, eine Verifizierungs-E-Mail an Benutzer bei der Registrierung zu senden. Ich benutze Accounts.createUser, um Benutzer zur Datenbank hinzuzufügen, und das funktioniert gut ohne E-Mail-Verifikationssystem. HTenn ich versuche, die E-Mail-Verifizierung mithilfe von Accounts.sendVerificationEmail zu implementieren, werden keine E-Mails gesendet. Ich habe MAIL_URL eingestellt und ich benutze Mailgun. Wenn ich versuche, eine E-Mail innerhalb des Terminals zu senden, sendet sie wie erwartet. Ich habe versucht, den Prozess zu verwenden, der hier zur Verfügung gestellt wird: https://themeteorchef.com/snippets/sign-up-with-email-verification/ wo die Methode serverseitig ist und dann verwende ich Meteor.call, um diese Methode aufzurufen, aber das sendet die Bestätigungs-E-Mail nicht. Ich habe auch versucht, Accounts.onCreateUser() zu implementieren und Accounts.sendVerificationEmail(user._id) von innerhalb anzurufen, aber das sendet auch nicht die E-Mail.Überprüfen der E-Mail in Meteor-Anwendung

In meinem Server-Code habe ich Folgendes in der Startfunktion: Accounts.config({sendVerificationEmail: true, forbidClientAccountCreation: false}); Ich habe auch festgestellt, dass, wenn ich in irgendeiner Art von E-Mail-Verifizierungscode Server-Seite, createUser schlägt fehl und sagt mir der Benutzername ist nicht definiert, aber funktioniert 100% wie erwartet ohne E-Mail-Bestätigung.

Hier sind einige Links zu verschiedenen Quellen, die ich zu nutzen, um versucht habe, diese Funktion zu erhalten: verify email using accounts.ui package

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

Meteor 1.3 verify email when creating user

Ich habe auch den Meteor docs benutzen aber Ich kann es nicht funktionieren lassen. Ich habe auch verwandte Pakete (E-Mail, Konten, Konten-ui) installiert. Jede Hilfe wird geschätzt!

+0

zu @PankajJatav Sind Sie "Accounts.sendVerificationEmail (user._id)" von Client-Seite aufrufen? –

+0

@PankajJatav Nein, ich habe es wie in diesem Link gezeigt eingerichtet: https://themeteorchef.com/snippets/sign-up-with-email-verification/, weil in den Meteordokumenten 'Accounts.sendVerificationEmail()' ein Server ist Funktion. Ich benutze 'Meteor.call', um dann die serverseitige Methode aufzurufen. –

+0

Erhalten Sie einen Fehler auf der Serverkonsole? –

Antwort

0

Vielen Dank an @PankajJatav, dass Sie mich gebeten haben, die Serverkonsole genauer zu lesen! Das Problem für mich war, dass ich Mailgun als meinen SMTP-Dienst benutze. Ich habe die Standard-Sandbox-Domäne verwendet, als ich versuchte, mein E-Mail-Verifizierungssystem zu implementieren, aber die Sandbox-Domäne dient nur zu Testzwecken. Um E-Mails wirklich zu erhalten, musste ich zu mailgun gehen und die Empfänger als autorisierten Empfänger hinzufügen. Wenn Sie mailgun von Anfang an mit Ihrer eigenen Domain einrichten, sollte dies kein Problem darstellen.

Noch einmal, danke

+0

Ihr Willkommen mein Freund :) –