Мой express сервер имеет учетные данные. json содержит учетные данные для учетной записи службы Google. Эти учетные данные используются для получения jwt от Google, и этот jwt используется моим сервером для обновления листов Google, принадлежащих учетной записи службы.
var jwt_client = null;
// load credentials form a local file
fs.readFile('./private/credentials.json', (err, content) => {
if (err) return console.log('Error loading client secret file:', err);
// Authorize a client with credentials, then call the Google Sheets API.
authorize(JSON.parse(content));
});
// get JWT
function authorize(credentials) {
const {client_email, private_key} = credentials;
jwt_client = new google.auth.JWT(client_email, null, private_key, SCOPES);
}
var sheets = google.sheets({version: 'v4', auth: jwt_client });
// at this point i can call google api and make authorized requests
Проблема заключается в том, что я пытаюсь перейти с узла / express до npm без сервера / aws. Я использую тот же код, но получаю 403 - запрещено.
errors:
[ { message: 'The request is missing a valid API key.',
domain: 'global',
reason: 'forbidden' } ] }
Исследования показали мне много вещей, включая: AWS Cognito , хранение учетных данных в переменных среды , пользовательские авторизаторы в шлюзе API . Все это кажется мне жизнеспособным, но я новичок в AWS, поэтому любые советы о том, какое направление выбрать, будут высоко оценены.