在此期间执行这种方法:
function authorize(credentials, callback) {
const {client_secret, client_id, redirect_uris} = credentials.installed;
const oAuth2Client = new google.auth.OAuth2(
client_id, client_secret, redirect_uris[0]);
// Check if we have previously stored a token.
fs.readFile(TOKEN_PATH, (err, token) => {
console.log(TOKEN_PATH);
console.log(token);
if (err) return getAccessToken(oAuth2Client, callback);
oAuth2Client.setCredentials(JSON.parse(token));
callback(oAuth2Client);
});
}
我收到此错误:
token.json缓冲器7B 22 61 63 63 65 73 73 5F 74 6F 6B 65 22 6E 3A ...该API返回一个错误:错误:unauthorized_client {错误:unauthorized_client
该文件crendential.json
是从我的硬盘用,可以在驱动器创建文件夹的用户直接下载。我该如何解决这个问题?
谷歌搜索后,我发现this。如果没有帮助,你能告诉我们你的操作系统和console.log(TOKEN_PATH)
的结果呢?
比方说TOKEN = 123456
和TOKEN
位于Users/dadojar/Documents/test
。
console.log(TOKEN_PATH)
应打印Users/dadojar/Documents/test
console.log(TOKEN)
应打印123456
。
从我的你的意见的理解,console.log(TOKEN_PATH)
打印123456
(它不应该)。
我解决这样的代码:
var jwToken = new google.auth.JWT( key.client_email, null, key.private_key, ["https://www.googleapis.com/auth/drive"], null ); jwToken.authorize((authErr) => { if (authErr) {
console.log("error : " + authErr);
return; } else {
console.log("Auth OK"); } });