Authentication 如何使用谷歌应用程序脚本登录网站

Authentication 如何使用谷歌应用程序脚本登录网站,authentication,cookies,google-apps-script,urlfetch,Authentication,Cookies,Google Apps Script,Urlfetch,我正试图用谷歌应用程序脚本登录一个网站,我写了一个函数来实现这一点。但是,我收到一条错误消息,说需要启用cookies。我真的不明白问题是什么 我正在尝试使用Google Apps脚本登录网站。 我阅读了下面的解决方案,然后在下面编写了登录函数 我的浏览器中确实启用了cookies,因此请有人澄清此消息的含义以及如何修复它 function logon() { var myurl = "https://www.someurl.com"; var user = "name";

我正试图用谷歌应用程序脚本登录一个网站,我写了一个函数来实现这一点。但是,我收到一条错误消息,说需要启用cookies。我真的不明白问题是什么

我正在尝试使用Google Apps脚本登录网站。 我阅读了下面的解决方案,然后在下面编写了登录函数

我的浏览器中确实启用了cookies,因此请有人澄清此消息的含义以及如何修复它

function logon() {
    var myurl = "https://www.someurl.com";
    var user = "name";
    var password = "########"; 
    var options = {};
    options.headers = {"Authorization": "Basic " +   Utilities.base64Encode(user + ":" + password) };
    var response = UrlFetchApp.fetch(myurl, options);
    var ui = HtmlService.createHtmlOutput(response.getContentText());
    SpreadsheetApp.getUi().showModelessDialog(ui,"demo");
}
结果是一条对话框消息,上面说: 请在浏览器首选项中启用Cookie并重新加载此页面。 基于, 我将代码修改为以下内容。但是,它仍然会导致相同的错误消息

function fetchUrlWithCookie() {
  var url = "https://www.someurl/login";
  var user = "name";
  var password = "#####"; 
  var options = {muteHttpExceptions: true,
                 followRedirects: false};
  options.headers = {"Authorization": "Basic " + Utilities.base64Encode(user + ":" + password) };
  var response = UrlFetchApp.fetch(url, options);
  var cookie = response.getAllHeaders()['Set-Cookie']; 
  var opt2 = {muteHttpExceptions: true,
                  "headers":
                      {Cookie: cookie}
             };
  var response2 = UrlFetchApp.fetch("https://www.someurl/app/v4/dashboard",opt2);
  var ui = HtmlService.createHtmlOutput(response2.getContentText());
  SpreadsheetApp.getUi().showModelessDialog(ui,"demo");
  Logger.log(response2.getContentText());
}
/* 要使用此页面,您的浏览器需要接受来自www.someurl.com的cookies

  Please enable cookies in your browser preferences and reload this page.
*/

可能重复的可能重复的
  Please enable cookies in your browser preferences and reload this page.