ホームページ >ウェブフロントエンド >フロントエンドQ&A >nodejsはリクエストセッションを取得します
Node.js は、高速、クロスプラットフォーム、モジュール式のサーバーサイド JavaScript ランタイム環境であり、効率的で安定したサーバーサイド アプリケーションを構築できます。 Webアプリケーションを開発する際にはSESSIONを利用することになりますが、Node.jsでリクエストのSESSION情報を取得するにはどうすればよいでしょうか?この記事では、SESSIONの概念、Node.jsのSessionに対応するモジュール、具体的なAPI情報などから、リクエストSESSIONの取得方法を紹介します。
1. SESSION の概念
SESSION は、ユーザー情報と操作を保存するために使用されるクロスリクエスト メカニズムです。SESSION 変数を保存することで、ユーザーは、セッションの別のページにアクセスしてもログインしたままにすることができます。ウェブサイトの状態を示し、異なるページ間でデータを渡します。 SESSION は、サーバー側の状態保持メソッドであり、各セッションに一意の ID を割り当て、その ID をクライアント (通常はクライアントの Cookie 内) に保存して、サーバーとクライアント間の通信と通信を実現します。新しいセッションごとに、追跡用に新しい ID が作成されます。
Web 開発では、SESSION を使用して、セキュリティの最適化、ユーザー エクスペリエンスの向上、ユーザー固有のニーズの実現などを行うことができます。
2. Node.js でのセッションの使用
Node.js には、Express アプリケーションにセッション サポートを追加できる、一般的に使用される SESSION モジュールの Express-session があります。
1. Express-session モジュールをインストールします。
コマンド ラインに次のコマンドを入力します:
npm install express-session
2. Express を導入します。 - プロジェクト セッションに:
プロジェクトに次のコードを追加します:
var express = require('express'); var session = require('express-session'); var app = express();
3. Express-session ミドルウェアを使用します
プロジェクトに次のコードを追加します。
app.use(session({ secret: 'keyboard cat',//secret的值建议使用随机字符串 cookie: { maxAge: 60000 }, resave: true, saveUninitialized: true }))
その内:
4. SESSION
を設定して取得します。プロジェクトでは、次のコードを通じて SESSION を設定および取得できます。
設定:
req.session.userName="tom";
取得:
var userName = req.session.userName;
次に、例を使用して SESSION リクエストを取得する方法を説明します。 Node.js の情報。
3. 特定の API 情報
リクエスト SESSION 情報の取得方法をより深く理解するために、まず Node.js の SESSION に対応する API を理解しましょう。
req.session
req.sessionを記述することで対話制御を実現できるsessionのリクエストミドルウェアです。使用例は次のとおりです。
req.session.userName='xiaoming';
上記のコードは、セッションへの userName
の追加を実装します。 Express では、会話情報はセッションに保存されます。セッションは、通常の JavaScript オブジェクトと同様に操作できるオブジェクトです。
req.session.destroy
この属性は、ユーザーが終了すると、セッションに保存されたデータがクリアされることを示します。使用例は次のとおりです。
req.session.destroy(function(err) { // cannot access session here })
セッションが破棄されると、コールバック関数が実行されます。
4. デモの例
次に、例を使用してリクエスト SESSION 情報を取得する方法を示します。
1. プロジェクトの作成
まず、プロジェクトを初期化し、main.js ファイルを作成します:
mkdir node-app && cd node-app npm init touch main.js
2. Express と Express-session をインストールし、
を導入しますコマンド ラインに次のコマンドを入力して、express と Express-session をインストールし、インポートします。
npm install express --save npm install express-session --save
main.js に次のコードを記述します。
const express = require('express') const session = require('express-session') const app = express() app.use(session({ secret: 'keyboard cat',//secret的值建议使用随机字符串 cookie: { maxAge: 60000 }, resave: true, saveUninitialized: true })) app.get('/login', (req, res) => { req.session.userName = 'Qiming' res.send('login success') }) app.get('/home', (req, res) => { let userName = req.session.userName if (userName) { res.send(`welcome ${userName}`) } else { res.send('please login first') } }) const server = app.listen(3000, () => { console.log(`app is running at http://localhost:${server.address().port}`) })
上記のコード内:
##ターミナルで次のコマンドを実行します:
node main.js
ブラウザを開いて http://localhost:3000/login にアクセスすると、「ログイン成功」メッセージが表示され、http://localhost:3000/home にアクセスすると、「welcome Qiming」メッセージが表示されます。 SESSION が正常に取得されました。
5. 概要
この記事では、SESSION の概念、Node.js での SESSION の使用法、特定の API 情報、およびデモンストレーションの例について学習し、皆様の向上に役立つことを願っています。 Node.js でリクエスト SESSION 情報を取得する方法を学びます。実際のプロジェクトでは、SESSION の使用方法を実際の状況に応じて決定する必要があり、ビジネス ニーズに応じて実装できます。
以上がnodejsはリクエストセッションを取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。