繁体   English   中英

从Google Sheets API v4调用Google Spreadsheets Apps脚本函数

[英]call a Google Spreadsheets Apps Script function from Google Sheets API v4

我有一个绑定了一些Apps Script功能的Spreadsheet

我也有一个使用Google Sheets API v4与该电子表格进行交互的Android客户端。

Android客户端是否可以通过Apps Script代码调用/运行某些功能?

我需要在Apps Script端而不是仅在Android客户端上运行代码的原因是,当文档发生问题时,我正在发送一些电子邮件,并且我希望从所有者那里发送电子邮件电子表格的帐户,而不是通过API进行身份验证的Android用户的帐户。

我知道我可以像在文档中添加行那样隐式地触发函数,但是有没有办法直接运行特定函数?

是。 您可以向Google Apps脚本发出GET和POST请求 从任何可以进行REST类型调用的地方(包括客户端)。 如果您需要身份验证,则还有apps-script 客户端库。 我写了一个简短的脚本,用于通过电子邮件将请求从一个应用程序脚本发送到此处的另一个脚本。 但是,如果您还从客户端调用了电子邮件脚本,则它将起作用。

将Google Apps脚本部署为Web Apps> reference ,通过这种方式,您可以运行函数Get(e)Post(e)并在有条件的情况下调用其中一个函数中的其他函数。

您可能已经得到了问题的答案。 以防万一,以下几点可能对您的开发有所帮助:

1)像往常一样创建服务器端脚本(即Google Apps脚本)功能:

function myFunction(inputVar) {
// do something
return returnVar;
}

2)创建如下所示的doGet(e)或doPost(e)函数-可以与1)中的函数位于同一.gs文件中:

function doGet(e) {

    var returnVar = "";
    if (e.parameter.par1 != null) {
        var inputVar = e.parameter.par1;
        returnVar = myFunction(inputVar);
    }

    return HtmlService.createHtmlOutput(returnVar);

}

3)将项目发布并部署为webapp。 注意部署的URL。

4)从您的Android客户端使用以下网址进行HTTP调用:your_webapp_url?par1 =“ input value”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM