【问题标题】:Close browser window with specific url (opened by different browser)关闭带有特定 url 的浏览器窗口(由不同的浏览器打开)
【发布时间】:2021-11-09 08:08:46
【问题描述】:

我正在做一个应用程序,当用户点击社交登录时,它会打开一个新窗口。假设我的应用程序在 Chrome 上运行,并且我的默认浏览器设置为 Edge; URL 正在 Edge 中打开。成功生成令牌后,它会在不关闭浏览器窗口/选项卡的情况下重定向到应用程序。

我使用azure AD认证如下

IPublicClientApplication app = PublicClientApplicationBuilder
  .Create(azMapping.ClientId)
  .WithAuthority(authority)                                            
  .WithRedirectUri("http://localhost:44342/Default.aspx")
  .Build();

result = app.AcquireTokenInteractive(scopes)
  .WithSystemWebViewOptions(new SystemWebViewOptions())
  .ExecuteAsync(CancellationToken.None)
  .GetAwaiter().GetResult();

授权 URL 在默认浏览器中打开。有没有办法在正在运行的应用程序上打开 URL,或者我们可以在收到响应后关闭?

【问题讨论】:

    标签: asp.net azure-active-directory


    【解决方案1】:

    您可以使用destinationpageurl 属性

    DestinationPageUrl 属性指定登录尝试成功时显示的页面。

    或者

    你可以使用JavaScript来实现这个window.location.href返回当前页面的href(URL)

    如果您只想导航到同一个窗口页面,Response.Redirect 应该可以工作。

    参考here for Open url in same window

    你可以看看如何处理see here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-21
      • 1970-01-01
      • 2021-10-03
      • 1970-01-01
      • 1970-01-01
      • 2013-07-06
      相关资源
      最近更新 更多