为什么e.parameter.argument在Google脚本中不起作用?
问题描述:
我只是在我的web应用程序创建的doGet功能,为什么e.parameter.argument在Google脚本中不起作用?
function doPost(e){
var userName = e.parameter.userName;
return ContentService.createTextOutput(userName);
}
,我又把它公布于众,任何人都可以执行它 URL为“https://script.google.com/a/slt.org.au/macros/s/AKfycby2pFGHc3qWaxnD4WGTLMEAPMUocohzH_-OsUPxwqi8kmWfRZs8/exec”
和我添加“?的userName = Leon“在结尾处
我在末尾输入了网址”https://script.google.com/a/slt.org.au/macros/s/AKfycby2pFGHc3qWaxnD4WGTLMEAPMUocohzH_-OsUPxwqi8kmWfRZs8/exec?userName=Leon“,我只希望它返回我的用户名,但它返回了很多东西 ”{“parameter”:{“userName”:“莱昂 “},” contextPath中 “:” “ ”CONTENTLENGTH“ - 1 ”的queryString“:” userName的= Leon“,”parameters“:{”userName“:[”Leon“]}}”
我尝试了参数和参数,doPost(e)和doGet(e),都没有工作.. 有人帮助我,为什么这些不能工作?
答
- 这里获得来自查询字符串的doGet一个简单的例子:
- 不要忘记部署为web应用程序。
- 我将最新参数保存在工作表名称Params中。
Codes.gs
function getParams()
{
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Params');
var rg=sh.getDataRange();
var vA=rg.getValues();
var s='<table>';
for(var i=0;i<vA.length;i++)
{
s+=Utilities.formatString('<tr><td>%s</td><td>%s</td></tr>',vA[i][0],vA[i][1]);
}
s+='</table>';
sh.clearContents();
return s;
}
function showTheThisDialog()
{
var ui=HtmlService.createHtmlOutputFromFile('thethisfunc');
SpreadsheetApp.getUi().showModelessDialog(ui, 'The This Func');
}
function doGet(e)
{
var sh=SpreadsheetApp.getActive().getSheetByName('Params');
var ui=HtmlService.createHtmlOutputFromFile('thethisfunc');
var data=e.parameter;
//Logger.log(e.parameter);
for(key in data)
{
var A=[key + ' is a ',data[key]];
sh.appendRow(A);
}
return ui.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
}
thethisfunc.html
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
$(function() {
google.script.run
.withSuccessHandler(dispParams)
.getParams();
});
function dispParams(hl)
{
console.log(hl);
document.getElementById('mybox').innerHTML=hl;
}
console.log('My Code');
</script>
</head>
<body>
<div id="mybox"></div>
</body>
</html>
这里是我的命令行:
https://script.google.com/macros/s/ID/exec?President=Donald&Donald=Duck