javascript - 使用 JavaScript AJAX 调用多个 URL
问题描述
我有一个应用程序可以生成一个超链接,用户可以单击该超链接并自动登录到单击的链接。例如,超链接是这样的https://www.externalapp.com/something/something/something
当用户点击上面的链接时,如果他之前没有与该应用程序 ( www.externalapp.com ) 的打开会话,他将根据某种 SSO 自动登录到该应用程序。但是,如果用户已经登录,则会提示他不支持多会话,因此他必须注销,然后重新登录。所以我的问题是我可以使用 Ajax,所以当用户点击超链接时,首先调用
https://www.externalapp.com/logout,然后
调用实际的 URL
https://www.externalapp.com/something/something /某物
如果是这样,您能否提供一个示例 javascript 来做到这一点?
解决方案
如果没有在服务器上设置 COR 标头,您将无法进行 XHR 跨域。我会先检查外部应用程序的注销 url 是否接受重定向参数。他们经常这样做。如果是这样,只需将链接更改为注销 + 重定向参数集。如果这不可能,您可以在 iFrame 中加载注销屏幕,然后在几秒钟后通过 setTimeout 重定向到登录屏幕。不幸的是,如果 x-frame-options 标头被限制性地设置,浏览器也不会允许这样做。
推荐阅读
- c# - 如何使用 C# 将一系列 Word 文档作为图片复制并粘贴到 PowerPoint 幻灯片中?
- r - 如何将 tidyr::full_seq 函数用于变异?
- asp.net - 使用 blazor 客户端和 ASP.NET Core 服务避免 CORS
- reactjs - 如何使用 konva react 将圆圈制作成表格
- android - kotlin/android 工作室中的“R”是什么?
- c# - 无法跟踪实体类型“”的实例,因为已在跟踪另一个具有键值“”的实例
- python - Python - 如何正确保存excel文件
- node.js - 设置了带有 OpenID 的 OAuth2.0 授权代码流,何时以及如何访问我的 SQL Server 以检索特定于该用户的数据?
- kotlin - `Unit = Unit` 在 Kotlin 中的作用和含义是什么?
- javascript - 循环遍历两个带有布尔条件的 JSON 数组 [Angular 10]