私はPassportJSを使用しています。私は自分のサイトのユーザーを認証するFacebook-Strategyです。PassportJS経由でFacebookから選択解除された値を処理する
ユーザーがFacebookのポップアップで何かを選択解除していないときは、すべてがうまくいきます。
しかし、ユーザーが電子メールの選択を解除すると、明らかにユーザーの制御下にあることはわかりません。
私の質問は、私が再試行したデータに基づいてそれらを「どこか他の人たち」に導く方法は何ですか?
passport.use(new FacebookStrategy({
clientID: config.facebook.appID,
clientSecret: config.facebook.appSecret,
callbackURL: config.facebook.callbackURL,
profileFields: ['displayName', 'picture.type(large)', 'emails', 'birthday', 'location']},
function(accessToken, refreshToken, profile, done){
var newUser = new userModel({
fullname : profile.displayName,
profilePic : profile.photos[0].value || '',
email : profile.emails[0].value || '',
birthday : profile._json.birthday || '',
location : profile._json.location.name || '',
});
newUser.save(function(err){
done(null, newUser);
});
);
}
私は、もちろん、プリプロセッサのいくつかの並べ替えを行うことができますが、データが有効でない場合、私は私が何をする必要があるか分かりません。たとえば、「Eメール」が必須であるとします。ユーザーに「必須の電子メールフィールドを入力していない場合は、入力してください」と伝え、プロファイル設定ページに移動します。
http://localhost:3000/auth/facebook/callback
そして、それは以下のNodeJSルートです:Facebookアプリ上
私のコールバックURLです
router.get('/auth/facebook/callback', passport.authenticate('facebook', {
successRedirect:'/wall',
failureRedirect:'/login'
}));
任意の入力が役立ちます。
ありがとうございます。
正確に。私の質問は - どのように私はフォームを持つ特定のページにユーザーを "リダイレクト"するのですか?私はsuccessRedirectとfailureRedirectしか見ることができません。ありがとう –
私は私の答えを編集して、それをチェックしました。 – Gousia
こんにちは。私は私がはっきりしていないかもしれないと思う。私が上に見ているのは、変数が提供されているかどうかをチェックする方法です。リダイレクトがどのように機能するのか分かりません。私はサイト全体でデータの検証を行ってきましたが、わからないことは、提供されたデータに基づいて特定のページにユーザーをルーティングする方法です。私は今、私が明らかになったことを願っていますありがとう –