【问题标题】:Change browser's URL after authorization redirect授权重定向后更改浏览器的 URL
【发布时间】:2020-06-16 14:48:07
【问题描述】:

我正在执行一个授权过程,我的应用程序接收codestate,这将用于交换访问/刷新令牌。这是通过来自身份提供者的重定向来实现的。处理并获得令牌后,我再做

$state.go('main', {
  inherit: false
});

继续申请。

这样做时,我的浏览器的 url 看起来像这样:

https://www.darkside.com/?code=f9c84c3cc47944915a10aa2723f4a31893e59c984f1f703c2bf49eb157fe6dca&state=4QJx86U9I5#/Main

如何将浏览器上的 url 更改为不重新加载到类似下面的内容?甚至可能吗?我试过window.location.pushState,但它不会改变浏览器的网址。

https://www.darkside.com/#/Main

提前致谢。

【问题讨论】:

    标签: javascript angularjs oauth-2.0 angular-ui-router appauth


    【解决方案1】:
    $location.search({}); // add this
    $state.go('main', {
       inherit: false
    });
    

    【讨论】:

    • 感谢您的回复。不幸的是,它没有用。我不确定它是否与 queryParams 不在网址末尾有关。
    • 哦,以前没见过。是的,这些肯定是在错误的地方
    • 虽然此代码可以解决 OP 的问题,但最好包含关于您的代码如何解决 OP 问题的说明。这样,未来的访问者可以从您的帖子中学习,并将其应用到他们自己的代码中。 SO 不是编码服务,而是知识资源。此外,高质量、完整的答案更有可能获得支持。这些功能,以及所有帖子都是独立的要求,是 SO 作为一个平台的一些优势,使其与论坛区分开来。您可以编辑以添加其他信息和/或使用源文档补充您的解释。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-18
    • 1970-01-01
    • 2022-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多