我正在使用自定义login-with-linkedin按钮。我有accounts-base
,accounts-oauth
和pauli:accounts-linkedin
个包。我使用了客户端ID和来自linkedin开发者网站的秘密,如下所示
Meteor.startup(function() {
ServiceConfiguration.configurations.update({
'service': 'linkedin',
},
{
$set: {
'clientId': 'myClientId',
'secret': 'mySecret'
}
},
{
upsert: true
});
});
在铁路由器中,我还在/ login模板上定义了waitOn函数,如下所示:
this.route('login', {
path: '/login',
waitOn: function() {
Accounts.loginServicesConfigured();
}
});
现在,当我点击该按钮时,会打开一个弹出窗口,但它没有加载linkedin登录页面,并且显示“ERR_CONTENT_DECODING_FAILED”' ERR_CONTENT_DECODING_FAILED'。
我在客户端的Meteor.startup函数中编写了ServiceConfiguration。我是否正确在客户端编写服务配置?或者我应该在服务器端写它?
答案 0 :(得分:2)
它应该在服务器端。从这里的Meteor文档中,
http://docs.meteor.com/#/full/meteor_loginwithexternalservice说
登录服务配置从服务器发送到客户端 应用启动时的DDP
我也在服务器端成功为account-google完成了服务配置。
答案 1 :(得分:0)
似乎这个common issue
有一个通用的解决方案首先,添加服务配置包:
meteor add service-configuration
然后,在你的应用中:
render () {
return (
<div>
{this.props.content[0].type}
</div>
)
}
我通常只是将一个带有此代码的service-config.js文件放在服务器中。