2

確認メールを変更して # が含まれないようにすると、ユーザーは確認されず、確認したいページに到達すると、メールの確認を求め続けます。以下のコードに示す方法は次のとおりです。確認メールのリンクを変更する

Accounts.urls.verifyEmail = function(token){
    return Meteor.absoluteUrl("verify-email/" + token);
 };

そしてこれが私のルーターです(私はiron-routerではなくFlowRouterを使用しています)

FlowRouter.route('/verify-email/:token',{
    name: 'verifyEmail',
    action: function(){
        BlazeLayout.render('MainLayout', {content: 'VerifyEmail'});
    }
});

そして、これが私がユーザーを確認する方法です

Template.VerifyEmail.created = function() {
    if (Accounts._verifyEmailToken) {
        Accounts.verifyEmail(Accounts._verifyEmailToken, function(err) {
            if (err != null) {
                if (err.message = 'Verify email link expired [403]') {
                    console.log('Sorry this verification link has expired.')
                }
            } else {
                console.log('You account is active now !')
            }
        });
    }
 };

送信された検証リンクを変更せず、元の検証トークンを送信した場合、クリックするとのホームページに移動し、 Template.VerifyEmail.created = function() を Template.Home.created = function に変更する必要があります()それは私が欲しいものではない
おかげで動作します

4

0 に答える 0