0
ユニバーサルアプリケーションでは、サーバー/サーバーのhttpリクエストですべてのユーザーCookieが失われます。 )クッキーは予想通りここにある(/ GETヒット)サーバー/サーバーリクエストでクッキーを転送
const fetch = require('isomorphic-fetch');
const bodyParser = require('body-parser');
const cookieParser = require('cookie-parser');
const session = require('express-session');
const server = require('express')();
server.use(bodyParser());
server.use(cookieParser());
server.use(session({
secret: 'foo',
httpOnly: false
}));
server.get('/set-cookies', (req, res) => {
req.session.user = { name: 'john doe' };
res.send('OK');
});
server.get('/a', (req, res) => {
console.log('COOKIE IN A = ', req.cookies); // Cookies are here !
const options = { credentials: 'include' };
fetch('http://localhost:3131/b', options)
.then(() => {
res.send('OK');
});
});
server.get('/b', (req, res) => {
console.log('COOKIES IN B = ', req.cookies); // Cookies are lost ! How to get it back ?
res.sendStatus(200);
});
server.listen(3131);
1)GET /セットクッキー 2ヒット
問題を:: 私は事を再現する小さなnodeJSアプリを構築していた場合/ AコントローラはGET/BへのAJAXリクエストを行い、それはクッキーを転送しないので、ルート/ bはユーザを認証できません
すべてのリクエストでユーザのクッキーを転送するにはどうすればいいですか? 私は「クッキージャー」について聞いたことがありますが、それが何であるかを明確に説明することができず、誰かがそれについての知識を共有することができれば、ウェブ上で何の説明も見つけられませんでした。
@MukeshSharma私は – Ludo
することができます...「ユニバーサルアプリでは」、これは、もちろん、私は私のアプリでこのコードを使用しようとしているわけではない技術的なケースを再現するだけの方法であることにより、私のメッセージを開始しましたコードを共有し、 '/ a'から'/b'をどのように呼び出すのでしょうか? –
@MukeshSharmaユニバーサル(または同形)アプリは、クライアントとサーバー側で同じコードを実行するアプリケーションです。 /aからの/ bを呼び出すコードはすでに自分の投稿にあります。これはfetch()呼び出しです。 – Ludo