こんにちは、passport.js を認証に使用する同形反応アプリに取り組んでいます。
私の問題は、リクエストがクライアントまたはサーバーから送信される可能性があることです。リクエストがクライアントからのものである場合、それは認証されており、すべて問題ありません。しかし、リクエストがサーバーからのものである場合、認証は失敗します:(
サーバー (わかりやすくするために多くを削除):
server.use('/api/data', require('./api/data'));
server.get('*', async (req, res, next) => {
await Router.dispatch({ path: req.path, query: req.query, context }, (state, component) => {
<div>
{component}
</div>
);
data.css = css.join('');
});
});
/api/データ:
router.get('/', auth.isAuthenticated, async (req, res, next) => {
res.status(200).send({result: 'working!'});
});
ルート:
on('/route', async (state, next) => {
// RESP IS A REJECTED RESPONSE :(
const resp = await fetch('/api/data');
const data = await resp.json();
return <Component data={data} />;
});