Node.js сохраняет хеш URL после response.redirect

Я видел много исправлений 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#_=_, Почему хэш переносится? Это маркер привязки к конкретной странице, поэтому я был бы очень удивлен, если это то, что он должен делать.

1 ответ

Хеш в URL-адресе только на стороне клиента, поэтому вы не можете изменить его со стороны сервера. Когда я столкнулся с той же проблемой, я просто добавил window.location.hash = ''; к началу моего исходного файла JS.

Другие вопросы по тегам