У меня есть вызываемая функция, в которой я хочу получить доступ к API Sheets, но не с учетной записью службы, я хочу выдать себя за пользователя. Проблема в том, что я не хочу отправлять клиенту URL авторизации. Пользователь уже выполнил вход в приложение firebase с помощью google на стороне клиента и дал согласие на разрешение всех необходимых мне областей (включая область действия Sheets API), поэтому мне было интересно, возможно ли использовать объект auth в параметре contextвызываемой функции для аутентификации с другими API от имени пользователя.
function exportSpreadsheets(data, context)
{
const {google} = require('googleapis');
//How do I create an OAuth2 object I can use to access the API
//without having to send the user an authentication link?
//Maybe using the data in context.auth.token?
const auth = new google.auth.OAuth2();
const sheets = google.sheets({version: 'v4', auth});
sheets.spreadsheets.create()
.then(x =>
{
console.log(x);
});
}
Я пробовал приведенный выше код, и он не работает. Я немного пытаюсь понять весь процесс OAuth2.
Спасибо!