我想知道是否可以为GitHub / OAuth开发和生产单独的配置。我假设这是烘焙它,但我找不到它。
我有一个看起来像这样的自定义配置:
Accounts.loginServiceConfiguration.insert({
service: "github",
clientId: "19c25aeb2a609872672d",
secret: "07136530fa20c3722caf6c2decc3776ca8729cf2"
});
它在本地工作就像一个梦,因为键被设置为与localhost一起使用。我尝试为生产指定另一个(在代码库中没有开发和生产之间的区别,只是另一个.insert()),如下所示:
Accounts.loginServiceConfiguration.insert({
service: "github",
clientId: "19c25aeb2a609872672d",
secret: "07136530fa20c3722caf6c2decc3776ca8729cf2"
});
Accounts.loginServiceConfiguration.insert({
service: "github",
clientId: "9f9e82b7ab0a1e1f3ec1",
secret: "12c1ab66f2c5d37c8c55390d09725c400e1bca84"
});
当我部署到生产环境时,它看起来像第一个配置(localhost)。
答案 0 :(得分:1)
在服务器启动时(是的,这将是服务器代码),清除所有 Accounts.loginServiceConfiguration
条目。然后根据用途重新插入:
Meteor.startup(function(){
Accounts.loginServiceConfiguration.find({}).remove();
if (process.env.NODE_ENV === "development") {
// Insert all login configs for development
} else {
// Insert all login configs for production
}
}