Node.js的在谷歌驱动更新映像:错误:unauthorized_client

问题描述 投票:0回答:2

在此期间执行这种方法:

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是从我的硬盘用,可以在驱动器创建文件夹的用户直接下载。我该如何解决这个问题?

node.js google-drive-sdk
2个回答
0
投票

谷歌搜索后,我发现this。如果没有帮助,你能告诉我们你的操作系统和console.log(TOKEN_PATH)的结果呢?

编辑:

比方说TOKEN = 123456TOKEN位于Users/dadojar/Documents/test

console.log(TOKEN_PATH)应打印Users/dadojar/Documents/test

console.log(TOKEN)应打印123456

从我的你的意见的理解,console.log(TOKEN_PATH)打印123456(它不应该)。


0
投票

我解决这样的代码:

 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");   } });
© www.soinside.com 2019 - 2024. All rights reserved.