实现YouTube认证时出现SyntaxError: Unexpected token {错误
解决YouTube API认证代码中的
SyntaxError: Unexpected token {错误 嘿,这个错误其实挺常见的!问题出在你用了ES6的对象解构语法{google} = require('googleapis'),但你的Node.js环境不支持这种写法——大概率是Node.js版本低于v6,或者没配置ES6语法支持导致的。
给你两种简单靠谱的解决办法:
方法1:改用ES5兼容写法
直接放弃解构语法,用传统的对象属性访问方式获取google对象,只需要修改一行代码:
var google = require('googleapis').google;
修改后的完整代码如下:
var readline = require('readline'); var google = require('googleapis').google; var OAuth2 = google.auth.OAuth2; var SCOPES = ['https://www.googleapis.com/auth/youtube.upload'];
方法2:升级Node.js版本
如果你的项目允许,直接把Node.js升级到v6及以上版本(现在更推荐用v14+的LTS稳定版本),ES6的解构赋值在这些版本里是默认支持的,你的原代码就能直接正常运行。
额外提个小建议:如果是全新项目,也可以在package.json里添加"type": "module",然后把require改成import语法,但这样可能会影响项目里其他CommonJS模块的使用,所以如果只是解决当前这个错误,前面两种方法会更稳妥。
内容的提问来源于stack exchange,提问作者Suresh Prajapati
相关产品推荐
相关产品推荐

