Google Apps脚本:Salesforce OAuth2集成

问题描述 投票:0回答:1

我正在尝试使用Google表格加载项中的OAuth2连接到Salesforce。

var url = 'https://login.salesforce.com/services/oauth2/authorize?response_type=code&client_id=' +
           clientId + '&redirect_uri=' + redirectUri + '&display=popup' + 
           '&scope=full' + '&prompt=login';

redirectUri是另一个Google Apps脚本WebApp URL。

现在,我需要将Salesforce返回的code分享到我的Google表格插件,但无法找到解决方案。

请让我知道是否有更好的身份验证方法。

任何帮助或建议都会很棒。

google-apps-script google-sheets salesforce google-oauth2
1个回答
0
投票

简短回答

否,您无法在编辑器加载项中打开要在相同上下文中加载的子窗口。

说明

由于Google Apps脚本使用安全沙箱来清理用户应用程序内容,因此您将无法利用<iframe>或同窗口资源加载。尽管可以在WebApp的同一窗口中加载目标资源,但不能在编辑器加载项中使用(在编辑器加载项的上下文中未设置allow-top-navigation属性的sandbox)。

[如果您接受,建议您将widthheight以及topleft属性设置为居中或使用window.open()将窗口移至侧边栏+,或者使用如果弹出窗口被阻止,则退回到链接。这至少将使UX的质量保持相对完整。

参考

如果您想更多地了解已有的限制和做法:

  1. [HTMLService限制guide
  2. [IFRAME模式迁移guide
© www.soinside.com 2019 - 2024. All rights reserved.