MSAL:为什么建议将 redirectUri 设置为空白页?

MSAL: Why is setting the redirectUri to a blank page recommended?

我正在阅读这份文件:https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-browser/docs/initialization.md

写着:

When using popup APIs we recommend setting the redirectUri to a blank page or a page that does not implement MSAL. This will help prevent potential issues as well as improve performance.

  1. 什么是“潜在问题”和“性能”?
  2. 如果我将 redirectUri 设置为空白页面,用户是否会被重定向到该空白页面?

对于静默流和弹出流,应用程序(启动操作)的主要 window 将监视 iframe/popup 以重定向回应用程序,然后解析响应。因为 main window 完成了所有工作,MSAL 不需要在用于这些操作的重定向 URI 上 运行。

对于 loginRedirect/acquireTokenRedirect,主 window 本身被重定向到登录屏幕,然后返回到应用程序,因此使用的重定向页面本身必须具有 MSAL 才能处理响应。

  1. What are "potential issues" and "performance"?

不确定“潜在问题”和“性能”,但如果我们在此处设置非空白重定向 uri,可能会导致超时问题。参见 this post

  1. If I set the redirectUri to a blank page, is the user redirected to the blank page?

没有。它不会将用户重定向到空白页面,因为 main window 将完成所有工作。