यहां मिले उत्तर का अनुसरण करने के बाद https://stackoverflow.com/a/15362856 (मुझे const एक्सप्रेस मिडलवेयर संशोधन के कारण मेरी फ़ाइल में)। मुझे संसाधित करने का अनुरोध नहीं मिल रहा है। मैं पोस्ट कॉल को अनुकरण करने के लिए डाकिया का उपयोग कर रहा हूं, जब मैं पोस्ट भेजता हूं, सर्वर लॉग पर कुछ भी नहीं दिखता है और अनुरोध सिर्फ 'कताई करता रहता है'। एक बार जब मैं अनुरोध रद्द कर देता हूं, तो सर्वर लॉग कहता है, POST /login?username=foo&password=bar - - ms - -

यहाँ मेरी server.js फ़ाइल है:

var express = require('express')
, http = require('http')
, path = require('path')
, passport = require('passport')
, LocalStrategy = require('passport-local').Strategy;

var app = express();

const flash = require('connect-flash');
const logger = require('morgan');
const cookieparser = require('cookie-parser');
const bodyparser = require('body-parser');
const session = require('express-session');

passport.use(new LocalStrategy(function(username, password, done) { 
  // insert your MongoDB check here. For now, just a simple hardcoded check.
  if (username === 'foo' && password === 'bar')
  {
    done(null, { user: username });
  }
  else
  {
    done(null, false);
  }
}));

passport.serializeUser(function(user, done) { 
  // please read the Passport documentation on how to implement this. We're now
  // just serializing the entire 'user' object. It would be more sane to serialize
  // just the unique user-id, so you can retrieve the user object from the database
  // in .deserializeUser().
  done(null, user);
});

passport.deserializeUser(function(user, done) { 
  // Again, read the documentation.
  done(null, user);
});

app.use(logger('dev')); // log every request to the console
app.use(cookieparser); // read cookies (needed for auth)
app.use(bodyparser); // get information from html forms
app.use(session({ secret: 'nextoner' } )); // session secret
app.use(passport.initialize());
app.use(passport.session()); // persistent login sessions
app.use(flash()); // use connect-flash for flash messages stored in session



// route to authenticate the user
app.post('/login', passport.authenticate('local', { 
  successRedirect: '/accessed',
  failureRedirect: '/access'
}));

app.listen(3012);
// app.listen(3012);

स्पष्ट रूप से मुझे कुछ याद आ रहा है, लेकिन दो दिनों के गुगलिंग के बाद मुझे यह पता नहीं लग रहा है कि यह क्या है। मदद की बहुत सराहना की जाएगी।

धन्यवाद

0
Clark McCauley 22 फरवरी 2017, 20:25
हो सकता है कि आप /accessed और /access के लिए रूट हैंडलर खो रहे हों?
 – 
undefined
22 फरवरी 2017, 20:33
मैंने उन्हें जोड़ा नहीं है, लेकिन जब मैंने किया, तब भी कोई फर्क नहीं पड़ा। यह वास्तव में कोई फर्क नहीं पड़ना चाहिए क्योंकि कोणीय मुझे एक नियंत्रक या दृश्य के बिना नामित यूआरएल पर शूट करेगा यदि कोई रूट हैंडलर मौजूद नहीं है तो मैंने सोचा।
 – 
Clark McCauley
22 फरवरी 2017, 21:29

1 उत्तर

सबसे बढ़िया उत्तर

ऐसा लगता है कि आप cookie-parser और body-parser को ठीक से प्रारंभ नहीं कर रहे हैं।

ये कोशिश करें:

app.use(cookieparser());
app.use(bodyparser.json());
app.use(bodyparser.urlencoded());
0
robertklep 22 फरवरी 2017, 22:13