Node.js は、サーバー側アプリケーションおよび API を構築するための非常に人気のある JavaScript ランタイム環境です。 Cross-Origin Resource Sharing (CORS) は、Web アプリケーションを構築する場合、または RESTful API に基づいた JavaScript アプリケーションを開発する場合に不可欠な機能です。 CORS を使用すると、ブラウザーは、クロスドメインの詳細を知らなくても、プロキシ サーバーを使用しなくても、異なるドメイン名または異なるポートからリソースを要求できます。この記事では、Node.js を使用してクロスドメイン リクエストを許可するように設定する方法について説明します。
クロスオリジン リソース共有 (CORS) は、Web アプリケーションのセキュリティ メカニズムであり、Web アプリケーションが異なるドメイン名、異なるポート、または異なるプロトコルからリソースを要求し、応答できるようにします。たとえば、JavaScript と AJAX を使用してあるドメインから別のドメインにデータをリクエストする場合、クロスドメイン リクエストを処理する必要があります。ブラウザーの同一オリジン ポリシーにより、ブラウザーは通常、他のドメインからのリソースのリクエストを許可しません。これはセキュリティ リスクとなります。
Node.js 環境では、CORS モジュールを使用してクロスドメイン リクエストを許可するように設定できます。 -ドメインリクエスト。 CORS モジュールは、クロスドメイン リクエストを処理するためのミドルウェアを提供します。npm コマンドを使用してモジュールをインストールできます:
npm install cors
インストール後、アプリケーションで CORS を使用できます。簡単な例を次に示します。
const express = require('express'); const cors = require('cors'); const app = express(); app.use(cors()); app.get('/api/data', (req, res) => { // 处理 GET 请求 }); app.post('/api/data', (req, res) => { // 处理 POST 请求 }); app.listen(3000, () => { console.log('Server is listening on port 3000'); });
上の例では、Express モジュールと CORS モジュールを導入し、app.use(cors())
ステートメントを使用して Express アプリケーションでそれらを有効にしました。コルス。これにより、各リクエストを個別に処理する必要がなく、GET、POST などのタイプのリクエストを任意のソースから実行できるようになります。
さらに制御と柔軟性が必要な場合は、CORS モジュールが提供する構成オプションを使用できます。以下は一般的に使用される詳細設定の一部です:
## です。つまり、すべてのソースが受け入れられます。 。 'GET,HEAD,PUT,PATCH,POST,DELETE'
です。 次にいくつかの例を示します:
const express = require('express'); const cors = require('cors'); const app = express(); app.use(cors({ origin: 'http://localhost:8080', methods: ['GET', 'POST'], allowedHeaders: ['Content-Type', 'Authorization'], exposedHeaders: ['Content-Length', 'X-Foo', 'X-Bar'], credentials: true, maxAge: 86400, preflightContinue: false })); app.get('/api/data', (req, res) => { // 处理 GET 请求 }); app.post('/api/data', (req, res) => { // 处理 POST 请求 }); app.listen(3000, () => { console.log('Server is listening on port 3000'); });
上の例では、cors()
の構成オプションを使用して、許可されるリクエスト ソースを指定しました。クロスドメインCookieなどを受信するためこれらのオプションはケースバイケースで設定できます。
この記事では、Node.js を使用してクロスオリジン リクエストを許可するように設定する方法について説明しました。 CORS は、クロスドメイン要求を許可する非常に重要な Web アプリケーション セキュリティ メカニズムであり、Web アプリケーション間のデータ通信をよりシンプルかつ安全にします。 Node.js を使用してアプリケーションを構築する場合、CORS モジュールを使用してクロスオリジン リクエストを簡単に処理できます。
以上がNode.js を使用してクロスドメインリクエストを許可するように設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。