我正在尝试在Node上设置Google日历API,使用出现的{。{3}}
的Node.js快速入门在完成所有前3个步骤并运行我的quickstart.js以检查它是否有效(我从快速入门复制并粘贴)之后,我收到以下错误:
“TypeError:googlAuth不是构造函数” 它引用了这行代码:
var auth = new googleAuth();
googleAuth声明如下:
var googleAuth = require('google-auth-library');
我无法在网上找到任何解决方案。
完整代码位于第三步上面的链接上。 提前致谢, 阿萨弗。
答案 0 :(得分:5)
版本已改变,就像这里的答案一样。根据新的docs,你必须要求这样的包:
const gal = require('google-auth-library');
const auth = new gal.GoogleAuth();
const jwtClient = new gal.JWT();
const oAuth2Client = new gal.OAuth2Client();
...
// if you're using Node 6+, you might find this convenient:
const {GoogleAuth, JWT, OAuth2Client} = require('google-auth-library');
旧的方式过去是这样的:
var GoogleAuth = require('google-auth-library');
var auth = new GoogleAuth();
var jwtClient = new auth.JWT();
var oAuth2Client = new auth.OAuth2();
基本上改变的是引用GoogleAuth
的方式。它现在是整个包装的一部分,而不是主要的出口。
这一改变对我有用!
答案 1 :(得分:3)
我认为这主要是一个nodejs和谷歌库安装问题。我在我的系统上运行node v8.2.1
,并且我能够正确执行nodejs快速启动。尝试安装最新的nodejs并再次执行这些行。
npm install googleapis --save
npm install google-auth-library@0.* --save
答案 2 :(得分:0)
Google最近发布了版本1.0.0
。如果您安装的版本不是npm
,则会安装最新版本。在这种情况下,您的代码应为:
const {GoogleAuth} = require('google-auth-library');
const auth = new GoogleAuth();