Node.js は、開発者がサーバーサイド アプリケーション開発に JavaScript 言語を使用できるようにする、非常に人気のあるサーバーサイド JavaScript ランタイム環境です。この記事ではNode.jsで画像を送る方法を紹介します。
1. Node.js の HTTP モジュールの使用
Node.js に付属の HTTP モジュールを使用すると、HTTP サーバーとクライアントを作成して処理できます。このモジュールを使用して画像を送信できます。以下はサンプル コードです:
const http = require('http'); const fs = require('fs'); http.createServer(function(req, res) { res.writeHead(200, {'Content-Type': 'image/png'}); fs.readFile('image.png', function(err, data) { if (err) { res.writeHead(404); res.write("File not found"); } else { res.write(data); } res.end(); }); }).listen(8080, function() { console.log('Server listening on http://localhost:8080'); });
このコードは HTTP サーバーを作成します。リクエストが届くと、ローカルの image.png ファイルを読み取り、それを HTTP 応答のコンテンツとして送信します。
2. サードパーティ モジュールを使用する
サードパーティ モジュールを使用すると、画像の送信プロセスを簡素化できます。人気のあるモジュールの 1 つは express
です。以下に例を示します。
const express = require('express'); const fs = require('fs'); const app = express(); app.get('/', function(req, res) { fs.readFile('image.png', function(err, data) { if (err) { res.writeHead(404); res.write("File not found"); } else { res.writeHead(200, {'Content-Type': 'image/png'}); res.write(data); } res.end(); }); }); app.listen(8080, function() { console.log('Server listening on http://localhost:8080'); });
この例では、express
モジュールを使用して、クライアントからの GET リクエストを処理し、image.png ファイルに応答する HTTP サーバーを作成します。
3. Base64 エンコーディングを使用する
もう 1 つの方法は、Base64 エンコーディングを使用して HTML 応答に画像を埋め込むことです。サンプル コードは次のとおりです。
const http = require('http'); const fs = require('fs'); http.createServer(function(req, res) { res.writeHead(200, {'Content-Type': 'text/html'}); fs.readFile('image.png', function(err, data) { if (err) { res.writeHead(404); res.write("File not found"); } else { const img = Buffer.from(data).toString('base64'); res.write('<img src="data:image/png;base64,' + img + '"/>'); } res.end(); }); }).listen(8080, function() { console.log('Server listening on http://localhost:8080'); });
この例では、image.png ファイルをメモリに読み取り、Base64 エンコード形式に変換して HTML に埋め込んで、クライアントに画像を表示します。
概要
上記は、Node.js で画像を送信するために必要な手順とサンプル コードです。 Node.js に付属の HTTP モジュールを使用して画像を送信することも、express
などのサードパーティ モジュールを使用することもできます。同時に、Base64 エンコーディングを使用して画像を HTML に埋め込むこともできます。反応。
以上がNodejsで写真を送る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。