使用UrlFetchApp for HTTPS Request更正Google API PATCH请求的语法

时间:2014-12-05 10:42:00

标签: google-apps-script httprequest google-groups-api

我正在尝试使用“应用脚本”中的UrlFetchApp.fetch(url)方法使用Google网上论坛设置API来修补群组资源。

下面的代码允许我获取组属性,但我无法弄清楚PATCH请求的语法。

function doSomething (accessToken) {

  var options = {
    method: "GET",
    headers: {
      authorization: "Bearer " + accessToken
    },
  };

  var result = UrlFetchApp.fetch("https://www.googleapis.com/groups/v1/groups/test_group_5@student.vis.ac.at", options);

  return HtmlService.createHtmlOutput (result.getContentText());
}

1 个答案:

答案 0 :(得分:1)

PATCH请求需要标头覆盖。实际上,您需要使用PUT请求,然后将其覆盖为PATCH请求。

var payload = "{\"" + PropertyOne + "\":\"" + "Proptery Value" + "\"}";

Logger.log('payload: ' + payload);

var options = {"method" : "put", "headers": {"X-HTTP-Method-Override": "PATCH"}, "payload" : payload};

if (payload.length > 2) {
  UrlFetchApp.fetch("https://www.googleapis.com/groups/v1/groups/test_group_5@student.vis.ac.at", options );
};

上面的代码不是你想要的,也可能没有错误,但它的结构应该是你需要的。我确定有效负载没有正确配置,因为我不知道格式是什么。看起来文档称它为Patch body一个对象。

Google Documentation - Group Settings API Patch

关键词:" Apps脚本",补丁