Авторизация API Google PickerPhp

Кемеровские программисты php общаются здесь
Ответить
Гость
 Авторизация API Google Picker

Сообщение Гость »


Я планирую создать веб-приложение, позволяющее пользователю загружать файлы на мой диск. Я создаю учетную запись службы и получаю токен OAuth для Google Picker. Я подтверждаю, что токен доступа действителен. Однако API Google Picker возвращает 403. Он работает, только если я вхожу в свою учетную запись ('myemail@example.com').
Я искал много дней, но до сих пор не нашел решение для этого. Любые комментарии приветствуются.
Вот мой код.

Код: Выделить всё





Picker API Quickstart



Picker API API Quickstart


Upload




let response = 

const SCOPES = 'https://www.googleapis.com/auth/drive.file';
const CLIENT_ID = 'MY_CLIENT_ID';
const API_KEY = 'MY_API_KEY';
const APP_ID = 'MY_APP_ID';

let accessToken = response['access_token'];
document.getElementById('authorize_button').style.visibility = 'visible';

/**
*  Create and render a Picker object for searching images.
*/
function createPicker() {
const view = new google.picker.View(google.picker.ViewId.DOCS);
view.setMimeTypes('image/png,image/jpeg,image/jpg');
const picker = new google.picker.PickerBuilder()
.enableFeature(google.picker.Feature.NAV_HIDDEN)
.enableFeature(google.picker.Feature.MULTISELECT_ENABLED)
.setDeveloperKey(API_KEY)
.setAppId(APP_ID)
.setOAuthToken(accessToken)
.addView(view)
.addView(new google.picker.DocsUploadView())
.setCallback(pickerCallback)
.build();
picker.setVisible(true);
}

/**
* Displays the file details of the user's selection.
* @param {object} data - Containers the user selection from the picker
*/
async function pickerCallback(data) {
if (data.action === google.picker.Action.PICKED) {
let text = `Picker response: \n${JSON.stringify(data, null, 2)}\n`;
const document = data[google.picker.Response.DOCUMENTS][0];
const fileId = document[google.picker.Document.ID];
console.log(fileId);
const res = await gapi.client.drive.files.get({
'fileId': fileId,
'fields': '*',
});
text += `Drive API response for first document: \n${JSON.stringify(res.result, null, 2)}\n`;
window.document.getElementById('content').innerText = text;
}
}


gapi.load("picker", "1");




Источник: https://stackoverflow.com/questions/781 ... r-api-auth
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»