Passport-http-bearer: Penanganan kustom dari respon pada kegagalan

Dibuat pada 1 Jul 2015  ·  4Komentar  ·  Sumber: jaredhanson/passport-http-bearer

Hai,
Saat ini, jika terjadi kegagalan, paspor merespons dengan 401, atau mengalihkan jika parameter "failureRedirect" disetel. Apakah ada cara untuk membuat respons khusus? Misalnya, mengirim JSON pada respons 401?

Saya perlu merespons dengan pengalihan untuk permintaan reguler dan dengan sesuatu yang lain jika ada permintaan XHR karena pengalihan bukan merupakan opsi dalam XHR karena CORS

Saya mencoba sesuatu seperti ini, tetapi tidak berhasil

  app.all('*', function(req, res, next) {
    return passport.authenticate('bearer', {
      session: false
    }, function(err, user, info) {
      if (err) {
        return next(err);
      }
      if (!user) {
        return res.status(401).send({<some JSON response here>});
      }
      return next();
    });
  });

Komentar yang paling membantu

Sudahlah, temukan solusinya:

app.all('*', function(req, res, next) {
  return passport.authenticate('bearer', {
    session: false
  }, function(err, user, info) {
    if (err) {
      return next(err);
    }
    if (!user) {
      return res.status(401).send(my_json_object);
    }
    req.user = user;
    return next();
  })(req, res, next);
});

Semua 4 komentar

Sudahlah, temukan solusinya:

app.all('*', function(req, res, next) {
  return passport.authenticate('bearer', {
    session: false
  }, function(err, user, info) {
    if (err) {
      return next(err);
    }
    if (!user) {
      return res.status(401).send(my_json_object);
    }
    req.user = user;
    return next();
  })(req, res, next);
});

Terima kasih @carera , saya mencari yang sama.

Bagaimana jika saya ingin menggunakan kembali middleware itu?

Coba taktik penggunaan kembali kode standar: Beri nama fungsi Anda, daftarkan dengan namanya, dan mungkin simpan dalam modul.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

mwawrusch picture mwawrusch  ·  3Komentar

AaronAcerboni picture AaronAcerboni  ·  3Komentar

iklementiev picture iklementiev  ·  3Komentar

danieljack picture danieljack  ·  3Komentar

thalesfsp picture thalesfsp  ·  3Komentar