Я получаю эту ошибку, когда захожу на локальный хост: 3000 и использую кнопку входа в систему с помощью кнопки facebook.
URL-адрес заблокирован: это перенаправление не удалось, поскольку URI перенаправления не внесен в белый список в настройках клиента OAuth приложения. Убедитесь, что клиент и веб-вход OAuth включены, и добавьте все домены приложений в качестве действительных URI перенаправления OAuth.
Даже когда я не вошел в систему на Facebook и пытаюсь перейти на Facebook для входа в систему, вместо этого я получаю пустую страницу с этой ошибкой.
Вы не вошли в систему: Вы не вошли в систему. Пожалуйста, войдите и повторите попытку.
Вот мой модуль аутентификации index.js:
'use strict';
const passport = require('passport');
const config = require('../config');
const h = require('../helpers');
const FacebookStrategy = require('passport-facebook').Strategy;
module.exports = () => {
passport.serializeUser((user, done) => {
done(null, user.id);
});
passport.deserializeUser((id, done) => {
//Find the user using the _id
h.findById(id)
.then(user => done(null, user))
.catch(error => console.log('Error when deserializing user'));
});
let authProcessor = (accessToken, refreshToken, profile, done) => {
// Find a user in the local db using profile.id
// If the user is found, return the user data using the done() method
// If the user is not found, create one in the local db and return
h.findOne(profile.id)
.then(result => {
if(result) {
done(null, result);
} else {
// Create a new user and return
h.createNewUser(profile)
.then(newChatUser => done(null, newChatUser))
.catch(error => console.log("Error when creating a new user"))
}
})
}
passport.use(new FacebookStrategy(config.fb, authProcessor));
Вот мой файл config/development.json. Я удалил значения dbURI и fb clientID и секрет, но в моей разработке эти значения существуют и были получены от соответствующих поставщиков.
{
"host": "http://localhost:3000",
"dbURI": "",
"sessionSecret": "catscanfly",
"fb": {
"clientID": "",
"clientSecret": "",
"calbackURL": "//localhost:3000/auth/facbeook/callback",
"profileFields": ["id", "displayName", "photos"]
}
}