server-side 等同于 Google Apps 脚本中的 $.ajax() 是什么?

What's the server-side equivalent of $.ajax() in Google Apps Scripts?

我想使用 Authorization header 从 Google 应用程序脚本中的 server-side 代码执行 HTTP 请求。是否有用于发送 HTTP 请求的应用程序脚本 API?

此代码在 Google Apps 脚本中的等效项是什么?

 var api = "URL";
 $.ajax({
     type: 'GET',
     url: api,
     contentType: 'application/json',
     dataType:'json',
     data: {},
     beforeSend: function(xhr) {
         xhr.setRequestHeader('Authorization', makeBaseAuth('username', 'password'));
     }
});

您需要使用 UrlFetchApp。查看 official docs

您可以使用 UrlFetchApp object. It has a fetch(url, params) method that returns a HTTPResponse 发送包含有关 HTTP 提取结果的信息的 HTTP 请求。

function testapi(){

    var encode =  Utilities.base64Encode('username:password', Utilities.Charset.UTF_8);
    Logger.log(encode);

    var option = {
      headers : {
            Authorization: "Basic "+ encode
      }   
    }

    var url = "URL";
    var response = UrlFetchApp.fetch(url, option).getContentText()
    response = JSON.parse(response);

    for (var key in response){
      Logger.log(key);
    }
}