调用GAS脚本作为服务从GWT发布

时间:2012-05-23 21:58:16

标签: google-app-engine gwt service google-apps-script

我创建了一个我作为服务发布的Google Apps脚本doPost脚本,仅供我自己使用(如https://developers.google.com/apps-script/guide_user_interfaces#RunDecision中所述,“将脚本发布为服务”一节)。

我现在有一个网址,例如https://sites.google.com/a/macros/[google apps domain] / exec?service = [service key]

我想从Google App Engine GWT应用程序调用此服务,但我不知道如何使用身份验证进行管理。

如果选择“允许任何人调用此服务”然后“允许匿名访问”,那么我可以从AppEngine调用此服务,但在我的情况下,我绝对需要身份验证。

你知道如何处理吗?

1 个答案:

答案 0 :(得分:1)

如果您只需要从服务器到服务器调用此脚本,并且两个端点都在您的所有权中,则可以使用共享密钥来执行此操作,例如。

应用脚本:

function doPost(e) {
   if(e.parameters.secret != 'mysecret') {
     return ContentService.createTextOutput("Nice try!");
   }
   // your code here
}

并随请求一起传输。如果您只与“应该拥有链接的任何人”共享您的脚本以提供合理的安全性 - 请确保您从未记录该请求,但也不要将其包含在错误消息中;)