Google脚本HTMLRequest - 发布

时间:2017-06-13 14:46:03

标签: javascript html google-apps-script

我尝试使用Google应用脚本在我的DirectEnergie帐户中验证自己。 当我将请求放在POSTMAN上并使用Chrome时,它可以正常工作,但是当我尝试按照后续操作时,它会返回第一页的HTML而不进行身份验证。

function getSumParr(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  url = "https://particuliers.direct-energie.com/mon-espace-client/?tx_deauthentification[login]=login&tx_deauthentification[password]=motdepasse&tx_deauthentification[form_valid]=1&tx_deauthentification[redirect_url]=  "
  var resultat = UrlFetchApp.fetch(url);
  Logger.log(resultat);
}

当我跟邮递员一起关注请求的历史时,我有这个: 回应[303],回应[307]

有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您可能需要查看本教程中有关GET and POST Requests in Google Apps Script

的信息
  

借助Google Apps脚本,您可以轻松创建使用HTML服务提供HTML,JSON,XML或纯文本输出的Web应用程序。当作为应用程序发布时,脚本会获得一个公共URL,可以使用带参数的GET或POST请求来调用它。

以下是他们的代码段:

function testPOST() {

  var url = ScriptApp.getService().getUrl();

  var payload =
      {
        "name" : "labnol",
        "blog" : "ctrlq",
        "type" : "post",
      };

  var options =
      {
        "method"  : "POST",
        "payload" : payload,   
        "followRedirects" : true,
        "muteHttpExceptions": true
      };

  var result = UrlFetchApp.fetch(url, options);

  if (result.getResponseCode() == 200) {

    var params = JSON.parse(result.getContentText());

    Logger.log(params.name);
    Logger.log(params.blog);

  }

}

此示例还遵循documentation关于如何使用可选高级参数提取URL的请求。

希望这有帮助。