我将Google脚本部署为网络应用程序,不幸的是由于公司政策,我必须部署它并将其提供给域内的任何人,而不是任何人甚至匿名。
这是网络应用代码
function doPost(e) {
var functionName = JSON.parse(e.postData.contents).functionName;
return ContentService.createTextOutput(JSON.stringify({result:functionName}))
.setMimeType(ContentService.MimeType.JSON);
}
以下是我试图通过它调用Web应用程序的Google Script代码,我尝试在请求标头中传递访问令牌。
function callWebApp(functionName) {
var response = UrlFetchApp.fetch(url, {
headers: {
"Authorization": "Bearer " + ScriptApp.getOAuthToken(),
},
contentType: 'application/json',
muteHttpExceptions:true,
method : 'post',
payload:JSON.stringify({functionName: functionName}),
});
Logger.log(response)
}
答案 0 :(得分:0)
您可以使用Session
服务之类的内容,并过滤掉不在您公司域中的用户。
例如:
var user = Session.getActiveUser().getEmail();
if(user.split('@')[1] === 'your.company.domain') {
//do something
}