部署到* .meteor.com时,Meteor Login无法正常工作

时间:2015-03-31 13:29:41

标签: meteor meteor-accounts

我的Meteor应用程序上有以下代码。
main.js(部分):

Template.login.events({
    'click .login-button': function( e ) {
        var serviceName = e.currentTarget.id.replace( 'login-buttons-', '' );
        Accounts._loginButtonsSession.resetMessages();

        var loginWithService = Meteor["loginWith" + (serviceName === 'meteor-developer' ? 'MeteorDeveloperAccount' : capitalize(serviceName))];
        var options = {}; // use default scope unless specified
        if (Accounts.ui._options.requestPermissions[serviceName])
            options.requestPermissions = Accounts.ui._options.requestPermissions[serviceName];
        if (Accounts.ui._options.requestOfflineToken[serviceName])
            options.requestOfflineToken = Accounts.ui._options.requestOfflineToken[serviceName];
        if (Accounts.ui._options.forceApprovalPrompt[serviceName])
            options.forceApprovalPrompt = Accounts.ui._options.forceApprovalPrompt[serviceName];

        loginWithService(options, function (err) {
            console.log('user logged in');
        });
    }
})

和index.html(部分):

<div class="service-login-buttons">
    <div class="login-text-and-button">
        <div class="login-button single-login-button" id="login-buttons-twitter">
            <div class="login-image" id="login-buttons-image-twitter"></div>
            <span class="text-besides-image sign-in-text-twitter">Sign in to save your Pomodoros</span>
        </div>
    </div>
</div>

在localhost上工作得很好(twitter登录)。
我将twitter应用程序设置更改为指向正确的* .meteor.com地址,但按钮没有做任何事情(也没有错误)。
是否有一些我需要重做的配置?

1 个答案:

答案 0 :(得分:0)

答案很简单:我还必须在已部署的版本上配置Twitter API。
由于我使用自定义登录按钮,我只是添加了

{{> loginButtons }}

要获取配置对话框(添加API密钥的位置),请在配置完成后删除该部分。