#javascript #ajax #google-api
#javascript #ajax #google-api
Вопрос:
Я пытаюсь загрузить файлы на Google Диск из своего веб-приложения с помощью Vuejs и Javascript, но когда я отправляю запрос, он отмечает эту ошибку. Я проверил значение переменной code и оно равно нулю, даже в окне переменной.location.search — это пустая строка, но я не знаю, какое значение должна иметь переменная code в запросе.
Это раздел кода:
const urlParams = new URLSearchParams(window.location.search);
console.log ("Value of window.location.search", window.location.search);
const code = urlParams.get('code');
console.log ("Valor de code", code);
const redirect_uri = "http://localhost:3000/formacionProf"
const client_secret = clientSecret;
const scope = "https://www.googleapis.com/auth/drive";
let access_token= "";
let client_id = clientID;
$.ajax({
type: 'POST',
url: "https://www.googleapis.com/oauth2/v4/token",
data: {
code: code,
redirect_uri: redirect_uri,
client_secret: client_secret,
client_id: client_id,
scope: scope,
grant_type: "authorization_code"
},
dataType: "json",
success: function(resultData) {
localStorage.setItem("accessToken",resultData.access_token);
localStorage.setItem("refreshToken",resultData.refreshToken);
localStorage.setItem("expires_in",resultData.expires_in);
window.history.pushState({}, document.title, "/formacionProf");
},
error: function (error) {
console.log(error);
}
});
Спасибо за ваше время.
Комментарии:
1. есть ли причина, по которой вы не используете библиотеку? developers.google.com/drive/api/v3/quickstart/js
Ответ №1:
Страница, над которой вы работаете, — это URL обратного вызова из Google api, поэтому они будут передавать параметры типа «code» при перенаправлении на вашу страницу.
window.location.search
означает строку запроса в текущем URL. Так что, возможно, вам нужно выполнить тестирование путем перенаправления с их страниц.