2016-07-30 27 views
1

我在构建需要访问登录用户的Google日历帐户的Meteor应用程序。使用流星,loginWithGoogle(没有accounts-ui软件包)如何为Google日历请求权限?

目前我有Google登录登录表单(以及本地帐户登录)工作。用户可以使用他们的Google帐户成功登录。

我实现以上如下:

我安装accounts-googleservice-configuration包。我已经安装了accounts-password软件包。

接下来,我创建了/server/lib/config一个名为accounts.js包含以下内容:

Meteor.startup(function() { 
    // Add Google configuration entry 
    ServiceConfiguration.configurations.update(
    {service: "google"}, 
    { 
     $set: { 
     clientId: "*****.apps.googleusercontent.com", 
     loginStyle: "popup", 
     secret: "*****" 
     } 
    }, 
    {upsert: true} 
); 
}); 

这允许用户点击在与谷歌按钮,这使得一个弹出窗口,并允许他们登录之后他们被重定向到我的应用程序。

现在的(第一个)我的问题:我怎么能requestPermissions(如前所述官方帐户文档here)访问用户的谷歌日历?更具体地说,我可以在哪里访问Accounts.LoginWithGoogle()方法?

我已经看过其他等问题(such as this)解释如何做到这一点。但是,它们都使用accounts-ui包。

此外,我怎么可以使用谷歌OAuth令牌我从认证下线(说,它传递给一个Python脚本或具有通过MongoDB的呼叫接入到它)?

任何帮助,将不胜感激。

回答

1

您可以通过相同的选项你linked to的问题方法Meteor.loginWithGoogle

具体请参考此文档页面:docs

+0

非常感谢您的回复。不过,我确实有一个关于'Meteor.loginWithGoogle'的问题。我如何实现它?它是否必须位于服务器/客户端的特定位置?我已经完成了'Meteor.loginWithGoogle'方法,但它在受保护的包文件中,我无法更改。所以我假设我必须自己实现它?我只是不确定在哪里/如何做到这一点。 – EfVonZee

+1

一旦您添加帐户,它就可以在客户端上使用 - google包 – imslavko

+0

当用户登录时,我是否必须调用'Meteor.loginWithGoogle'?如果是这样,我如何将它链接到登录页面自动出现的使用Google登录按钮?我用'Meteor.loginWithGoogle'方法创建了一个客户端.js脚本,但是,当我使用Google登录时,我没有收到提示询问Google日历的权限(如loginWithGoogle方法中所述)。 – EfVonZee