代码之家  ›  专栏  ›  技术社区  ›  Developer

关闭带有特定url的浏览器窗口(由不同浏览器打开)

  •  0
  • Developer  · 技术社区  · 4 年前

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

    我使用azure广告认证,如下所示

    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,或者在收到响应后关闭?

    0 回复  |  直到 4 年前
        1
  •  0
  •   Delliganesh Sevanesan    4 年前

    你可以使用 destinationpageurl 所有物

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

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

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

    参考 here for Open url in same window

    你可以看看如何处理它 see here

    推荐文章