从外部URL调用定制的GASfunction
我想调用我在Google Apps脚本中编写的自定义函数。 当我执行一个getJSON,我想它会自动运行我的doGet(e)。
我的Javascript:
$.getJSON(https://script.google.com/macros/s/[ID]/exec, function(data){ //code here });
例如有没有一种可能的方式来调用我的自定义函数之一
我的Google Apps脚本:
function getNumberOfFans(e){ //code here }
我必须添加一些额外的function参数到我的url?
您可以将searchstring参数添加到使用Apps脚本创build的发布的Wep App的URL中。
将searchstring添加到已发布的Web App URL:
https://script.google.com/macros/s/[ID]/exec?searchStringName=functionOne
searchstring位于URL的末尾,在exec
之后。 你必须在exec
后添加一个问号,然后name=value
将事件参数(用字母“e”表示)放入doGet(e)
函数中,而不是您想要使用的函数。
function doGet(e) { var passedString,whatToReturn; passedString = e.parameter.searchStringName; if (passedString === 'functionOne') { whatToReturn = functionOne(); //Run function One }; return ContentService.createTextOutput(whatToReturn); }; function functionOne() { var something; //. . . . Code; something = code here; return something; };
上面的代码是针对GET请求的。 如果您想使用POST请求,请不要在URL中使用searchstring。 对于POST请求,您将在有效负载中发送信息。 你仍然会使用e.parameter
来访问发送的数据,但是e.parameter
任何东西都将是一个包含键/值对的对象。 您需要知道在对象中发送的密钥(属性)名称是什么。
有关URL参数的说明,请参阅此文档:
url参数