javascript - Node.js 在 response.redirect 之后保留 URL 哈希

标签 javascript node.js facebook-oauth

我已经看到许多 JavaScript 使用 window.location 对此进行了修复,但没有针对 Node.js 的修复。

我正在使用 OAuth 将用户连接到 Facebook。获得授权后,Facebook 会重定向到您的回调 URL 并向其附加“#=”。问题出在我的回调路由中,我重定向到另一个 URL,但 URL 片段(哈希)被保留了下来。

这是我的 Facebook 回调路径:

exports.facebook_signin_complete = function(req, res)
{
    res.redirect('/profile');
};

如果我删除重定向,则 URL 为 /auth/facebook/callback#_=_,如果我保留重定向,则 URL 为 /profile#_=_。为什么要保留哈希值?这是一个页面特定的 anchor 标记,所以如果这是它应该做的,我会感到非常惊讶。

最佳答案

URL 中的散列只是客户端的,因此您不能从服务器端修改它。 When I ran into the same problem我最终只是将 window.location.hash = ''; 添加到我的初始 JS 文件的顶部。

关于javascript - Node.js 在 response.redirect 之后保留 URL 哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24318359/

相关文章:

javascript - 仅使用 CDN 将 Vuetify 与 i18n 结合使用

javascript - jQuery.getJSON() 如何获取请求的状态

javascript - 使用 PhantomJS 和节点幻影模块进行 PNG 半渲染?

javascript - Postman 测试检查部分对象值

javascript - 未处理的拒绝nodejs

javascript - 如何使用 Socket.io 在 Node.js 中添加房间?

spring-mvc - 如何在 Java (Spring MVC) 中连接 Facebook、Twitter 和 Google 帐户

node.js - 在 serverless yml 中添加角色作为 CloudFormation 模板

java - 注册 facebook - Java 服务器端身份验证 - 获取访问 token

facebook - 为 facebook OAuth2 指定多个重定向 URI