javascript - Office.js | 实现单点登录excel加载项
问题描述
我正在使用 Office.js、javascript 并做出反应以创建 excel 加载项。想要使用功能区按钮实现单点登录流程。用户成功登录后,只想向用户显示任务窗格。
- 我已经使用共享运行时(manifest.xml)配置了加载项
- 我在功能区中添加了登录命令,并使用以下代码从清单文件执行操作。
以下是清单文件中的操作。'btnlogin' 功能在单击功能区中的登录图标时执行
<Action xsi:type="ExecuteFunction">
<TaskpaneId>DataDirectId</TaskpaneId>
<FunctionName>btnlogin</FunctionName>
<SourceLocation resid="LGButton.Url" />
</Action>
在 btnlogin 函数中使用 Office.context.ui.displayDialogAsync() 并将“oauth2”授权 URL 传递给对话框。URL 在不同的主机上。如果将打开的对话框作为 i-frame 传递,则在响应标头中接收 X-FRAME-OPTIONS = DENY,因为它授权 URL 拒绝显示在 I-frame 上。如果我不通过 displayInIframe 则授权 URL 将打开。我还在“AppDomain”中添加了授权 URL 主机。
授权 URL 在对话框内打开用户名/通过窗口,一旦用户通过正确的用户名/通过授权 URL,就会重定向到提供的路径。例如,下面是我试图在对话框中打开的授权 URL: https ://google.com?response_type=abc&client_Id=xyz&**redirect_uri=https://application-url-to-redirect * *
请帮助实现以下场景: 在输入正确的用户名/密码时想要关闭对话框并在任务窗格上打开 redirection_URI。
我们在我们的应用程序中使用哈希路由器。
我需要使用任何 react-oidc 或 passport-auth 库吗?请建议并帮助实施。