ошибка: 0906D06C: процедуры PEM: PEM_read_bio: нет строки запуска для Google APIS - PullRequest
0 голосов
/ 21 сентября 2019

Я пытаюсь настроить служебную учетную запись для получения токена авторизации. Мне нужно начать отправку изображений в API фотографий Google из-за приложения, созданного только для сервера, которое я создаю.Я использовал Руководство Google для работы над настройкой и в настоящее время застрял в вычислении JWS для первоначального пост-запроса.Для подписи я использую встроенный криптографический пакет, но продолжаю зацикливаться на следующей ошибке:

internal/crypto/sig.js:83
  var ret = this._handle.sign(key, passphrase, rsaPadding, pssSaltLength);
                         ^

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
    at Sign.sign (internal/crypto/sig.js:83:26)
    ...

Вот где я звоню:

const claimsOptions = {
  "iss": "...", (this is filled in just removed for the post)
  "sub": "...", (this is filled in just removed for the post)
  "scope": "https://www.googleapis.com/auth/photoslibrary.appendonly",
  "aud": "https://oauth2.googleapis.com/token",
  "exp": 1328554385,
  "iat": d.getTime(),
}

const encoding = {
  "alg": "RS256",
  "type": "JWT"
}

header = Buffer.from(JSON.stringify(encoding)).toString("base64");
claims = Buffer.from(JSON.stringify(claimsOptions)).toString("base64");


console.log(`${header}.${claims}`); //Returns a properly defined base64 string
const sign = crypto.createSign('RSA-SHA256');
sign.write(`${header}.${claims}`); //Writing that string to the signature
sign.end();
console.log(sign)
const signature = sign.sign(API_PRIVATE_KEY, "base64"); // Signing it using my API Key from my API Keys tab under console.developers.google.com

Любые идеи почто я делаю не так?Любая помощь очень ценится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...