Meteor OAuth服务器错误:无法完成与Instagram的OAuth握手

时间:2016-09-08 01:56:02

标签: meteor oauth instagram

我正在使用https://github.com/meteor-helium/instagram包来处理Instagram登录。

在我的server / social-config.js中,我有

ServiceConfiguration.configurations.remove({
    service: 'instagram'
});
ServiceConfiguration.configurations.insert({
    service: 'instagram',
    clientId: '****',
    secret: '****'
});

在我的client / main.html中,我有

<template name="login">
{{#if currentUser}}
    <button id="logout">Logout</button>
{{else}}
    <button id="instagram-login" class="btn btn-default"> Login with Instagram</button>
{{/if}}
</template>

在我的client / main.js中,我有

Template.login.events({
'click #instagram-login': function(event) {
    Meteor.loginWithInstagram({}, function(err){
        if (err) {
            throw new Meteor.Error("Instagram login failed");
        }
    });
},

'click #logout': function(event) {
    Meteor.logout(function(err){
        if (err) {
            throw new Meteor.Error("Logout failed");
        }
    })
}
});

点击“使用Instagram登录”按钮

时出现以下错误
Error in OAuth Server: Failed to complete OAuth handshake with Instagram. failed [400] {"code": 400, "error_type": "OAuthException", "error_message": "Invalid Client Secret"}

1 个答案:

答案 0 :(得分:1)

我认为根据这个https://github.com/meteor-helium/instagram/blob/master/instagram_configure.js#L10 客户端密码属性名称应为clientSecret,而不是secret

ServiceConfiguration.configurations.insert({
    service: 'instagram',
    clientId: '****',
    clientSecret: '****'
});