Настройка скрипта Google для входа на веб-сайт и загрузки некоторых файлов PDF в папку на диске Google. На веб-сайте будет опубликован токен csrf, электронная почта пользователя и пароль пользователя. При использовании UrlFetchApp.getRequest, просто чтобы посмотреть, что он собирается отправить, getRequest (и .fetch и т. Д.) Покажет мне, что функция правильно кодирует большинство символов, но для моего пользователя, введенного по электронной почте и паролю, она не будет их кодировать.
При проверке данных поста с момента моего входа в систему они должны быть «user% 40email.com» (% 40 для @).
Но при просмотре запроса, который будет отправлен из UrlFetchApp.getRequest, я вижу, что отправляемое письмо по-прежнему «user@email.com». Если я попытаюсь вручную ввести% 40 для '@' или использовать какой-либо из кодировщиков, то электронное письмо с кодировкой URL становится 'user% 2540email.com' (то есть, я думаю, оно также кодирует '%').
Мысли? Обойтись?
Я пробовал все возможные комбинации между escape, encodeURI и encodeURIComponent, просто надеясь, что что-то сработает.
var url = 'www.url.com';
var token = 'csrf-token';
var email = 'user@email.com';
var pass = 'pass!word';
var formData = {
'authenticity_token': token,
'user[email]': email,
'user[password]': pass
};
var options = {
'method': 'post',
'payload': formData,
'followRedirects': true
};
var req = UrlFetchApp.getRequest(url, options);
Logger.log(req);