私の主なアプリはDjangoアプリですが、リアルタイムのものはNode/Socket.IOを使いたいです。私はRedisを使用してDjangoからNodeにpub/subを行っています(そして様々なクライアントに)。難しい部分は、Djangoの認証に対してNodeユーザーを認証する方法です。私のノードのアプリでノードアプリケーションでDjango認証を使用してユーザーを認証するにはどうすればよいですか?
、私が持っている:
io.on('connection', function (socket) {
const subscribe = redis.createClient();
var userId = authenticateAndGetUserId();
subscribe.subscribe(userId + ':feed-items');
subscribe.on('message', function (channel, message) {
socket.emit('feed-items', JSON.parse(message));
});
});
だから私の質問はauthenticateAndGetUserId
を実装するための良い戦略何ですか?セッションはMySQLでバックアップされていますので、私はそこを通過できます。それについてもっと良い方法があるかどうか不思議です。
これです。私は、私のDjangoユーザープロファイルモデルで、キーをランダムに生成して、 'api key'フィールドを作成します。次に、そのキーを取得し、有効なユーザーに属しているかどうかを判断する単純なHTTPエンドポイント/ APIを使用できます。 – maroonmed
node.jsがブロックされませんか?その場合、node.jsの使用は何ですか? –
Node.jsをブロックする理由がわかりません – deltanovember