Node.js は、異なるリクエストパスに応じて異なるデータを返します。

Node.js は、異なるリクエストパスに応じて異なるデータを返します。

1. 異なるリクエストパスに応じて異なるデータを返す方法を学びます。

var url=req.url // req.url の値を取得します (req: は request の略語です)
req.url : ポート番号の後のパスを取得して、異なるパスを実現し、異なるデータを返します。

ポート番号: 3000、URL: http://127.0.0.1:3000

if(url==='/'){

res.end('index page') //入力URLがhttp://127.0.0.1:3000/の場合
//括弧内のデータに応答し、表示のためにデータをサーバーに送信します
}

if(url==='/ログイン')
{

res.end('ログイン ページ') //入力 URL が http://127.0.0.1:3000/login の場合
//括弧内のデータに応答し、表示のためにデータをサーバーに送信します
}

ここに画像の説明を挿入

var http = require("http"); // http モジュール http.createServer(function(req, res) {
//res.write('hello')
//res.write('world!')
 // res.end('インデックスページ');

var url=req.url //req.urlの値を取得 if(url==='/'){

res.end('index page') //コンテンツ終了}else if(url==='/login')
{

res.end('ログインページ')


}それ以外{

  終了('404')
}

コンソールにログ出力します。

}).listen(3000); // ポート3000をリッスンする
 
console.log("HTTP サーバーはポート 3000 でリッスンしています。URL は http://127.0.0.1:3000 です");

結果:

ここに画像の説明を挿入

ここに画像の説明を挿入

2. 送信データ: データ型とエンコード: Content-Type

res.setHeader('Content-Type','text/plain; charset=utf-8')
res.setHeader('Content-Type','text/html; charset=utf-8')

text/plain: プレーンテキスト: コンテンツが HTML タグの場合は、text/html に変更する必要があります。
res.end(“helloworld”); text/plain を使用する

res.end('<p>Who am I<a>Click</a></p>') //ブラウザに認識されるようにtext/htmlを使用する

charset=utf-8 : コンテンツはutf-8でエンコードされています

ここに画像の説明を挿入

3. ファイルの読み取りについて: 相対パスと絶対パス:

この相対パスは、実際にはノード コマンドが実行されるパスを基準としています。

var fs=require(“fs”) //fsには多くのAPI関数があり、fsオブジェクトを取得します
fs.readFile()// ノードコマンドを実行するファイル d:\node1.js を読み取ります
ファイル 07.html はディレクトリ d:node1.js にあります。
つまり、fs.readFile('./07.html', funtion(){ })
ファイルを読み取り、その内容をデータに渡すことができます
また
res.end(data)
HTMLコンテンツをres.red()に記述し、Webページを開いてs.endを確認します。

ここに画像の説明を挿入

ここに画像の説明を挿入

var http = require("http"); // http モジュール var fs = require("fs")
   //var url=req.url;
http.createServer(function(req, res) {


//res.write('hello')
//res.write('world!')
 // res.end('インデックスページ');
 fs.readFile('./07.html',function(err,data) {
    
もしエラーが起きたら

res.setHeader('Content-Type','text/plain; charset=utf-8')

     res.end('wss')

}
それ以外{

res.setHeader('Content-Type','text/html; charset=utf-8')
res.end(データ)

}

 })


}).listen(3000);
console.log("サービス")

結果:

ここに画像の説明を挿入

4. 絵を読む

fs.readFile('./07.jpg',function(err,data)
res.setHeader('Content-Type','image/jpeg; charset=utf-8')
res.end(data)
//メインコード

これで、異なるリクエスト パスに応じて異なるデータを返す node.js の詳細なプロセスに関するこの記事は終了です。より関連性の高い node.js リクエスト パスとデータ コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Node.jsのパス処理方法と絶対パスの詳しい説明
  • Node.jsのパス処理モジュールpathの詳しい説明
  • Node.jsクローラーを使用してウェブサイトのデータをクロールする方法を教えます
  • Node.js による Douban データのクロールの分析例

<<:  DockerでLNMPアーキテクチャを展開する方法

>>:  UTF-8 および GB2312 ウェブエンコーディング

推薦する

WeChatアプレットはシンプルなチャットルームを実装します

この記事では、WeChatアプレットの具体的なコードを共有し、簡単なチャットルームを実装します。具体...

HTML テーブル マークアップ チュートリアル (39): ヘッダーの明るい境界線の色属性 BORDERCOLORLIGHT

テーブル ヘッダーでは、明るい境界線の色を個別に定義できます。基本的な構文<TH ボーダーカラ...

Nest.js 環境変数の設定とシリアル化の詳細な説明

環境変数の設定の簡単な説明プログラムは、環境によって異なる環境変数を必要とします。たとえば、実稼働環...

HTML テーブル マークアップ チュートリアル (43): テーブル ヘッダーの VALIGN 属性

垂直方向では、ヘッダーの配置を上、中央、下に設定できます。基本的な構文構文Top は上、Middle...

CSSはスクロールを許可しながらスクロールバーを非表示にするためにオーバーフローを設定します

CSS は、スクロールを許可しながらスクロール バーを非表示にするために Overflow を設定し...

Linux の高性能ネットワーク IO と Reactor モデルの分析

目次1. 基本概念の紹介2. ネットワークIOの読み取りと書き込みのプロセス3. 5つのLinuxネ...

dockerでopenGaussデータベースを構成する方法の詳細な説明

Windowsユーザー向けDocker で openGauss を使用するopenGaussイメージ...

Reactベースのコンポーネントのカプセル化の実装手順

目次序文antd はどのようにしてコンポーネントをカプセル化するのでしょうか?ディバイダーコンポーネ...

CentOS7 インストール GUI インターフェースとリモート接続の実装

ブラウザ (Web ドライバー) ベースの Selenium テクノロジを使用してデータをクロールす...

CocosCreatorでリストを作成する方法

CocosCreator バージョン: 2.3.4 Cocos には List コンポーネントがない...

Mysql マスタースレーブ同期 Last_IO_Errno:1236 エラー解決

Mysql マスタースレーブ同期の Last_IO_Errno:1236 エラーの原因は何ですか? ...

MySQLに画像を保存する方法

1 はじめにデータベースを設計する場合、画像や音声ファイルをデータベースに挿入することは避けられませ...

Vue3+Vantコンポーネントを使用してアプリの検索履歴機能を実装する(サンプルコード)

現在、新しいアプリプロジェクトを開発中です。私にとっても初めてのアプリ開発です。チームで調査と検討を...

Linux カーネル デバイス ドライバー カーネル時間管理に関する注意事項

/****************** * Linux カーネルの時間管理 ***********...