首页 > 解决方案 > 简单的表单提交重定向到错误的页面,为什么?

问题描述

我无法理解 Google App Script 中的这种行为,有人可以解释一下吗?

这是一个绑定到工作表的非常简单的脚本。代码:

代码.js

function doGet() {
  return HtmlService.createHtmlOutputFromFile("index.html");
}

function doPost() {
  return HtmlService.createHtmlOutputFromFile("index.html");
}

索引.html

<!DOCTYPE html>
<html>
  <head>
    <base target="_top">
  </head>
  <body>
    <form id="form" name="form" action="" method="POST">
      <input type="submit" id="submit" name="submit" value="submit">
    </form>
  </body>
</html>

看起来很简单吧?好吧,当您单击提交按钮时,页面将重定向到空白页面。

我已经知道如何解决这种行为(通过使用 script.run 甚至通过查询页面的 URL 来使用 hackier),但我想知道这里为什么会出错,因为如果可以的话, doPost 方法的意义何在甚至不使用它。

标签: google-apps-scriptweb-applicationsformshttp-post

解决方案


*.googleusercontent.com这是因为出于安全原因,您的页面是从另一个 URL提供的。doPost 方法的要点是,只要您知道已发布的 url,您就可以在任何服务器上的任何位置从您的客户端(例如本地 Python 脚本/nodeJs)发布到已发布的 url。


推荐阅读