javascript - 删除 Angular-Node-Passport 身份验证中的浏览器历史记录

标签 javascript node.js angular typescript passport.js

我制作了一个 Angular 应用程序,它使用 Node 和 Passport 进行身份验证(Google、Facebook)

每当用户点击登录按钮时,浏览器都会调用*/auth/google/* Node 路由,Passport会打开google同意书(history state1),成功后/重定向失败,会调用*/auth/google/callback*(history state2)。在回调路由中,我将用户重定向回主网站。

但我的问题是,当用户按下浏览器后退按钮时,它将再次打开同意窗口。

有没有一种方法可以帮助禁止这些状态从 node/passport 或使用普通 Typescript 存储在浏览器历史记录中?

最佳答案

尝试replaceUrl: true同时触发导航到主页

// Navigate to /view
this.router.navigate(['/view'], { replaceUrl: true });

关于javascript - 删除 Angular-Node-Passport 身份验证中的浏览器历史记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59509015/

相关文章:

angular - Electron + Angular CLI如何使用 Electron 打包程序打包dist

javascript - 一个简单的 Nodejs MySQL 查询

javascript - 标题中带有文本的按钮的大小与内部带有图标的大小不同。为什么?

javascript - 是否可以使用 css 媒体查询获取移动设备的大小并将其发送到 php 变量

javascript - 两个具有相同操作的提交按钮,其中一个为同一表单添加了功能/操作

node.js - Mongoose - 将参数传递给预保存 - 在更新保存中不起作用

javascript - 访问回调函数内的局部变量

mysql - ROLLBACK 不会回滚事务 [NodeJS、MySQL]

angular - 将Nginx配置为按 Angular 服务器资源文件

angular - 每行和标题列的 "Edit/Delete"按钮在 md-table 组件中为 'Action'