Expressフレームワークの基本操作

目次

1. アプリケーションビルダー

2. 基本的なルーティング

2.1. ルートの下に GET リクエストを設定し、対応するコンテンツを返します。

 2.2. ルートの下に POST リクエストを設定し、対応するコンテンツを返します。

 2.3. ルートの下に PUT リクエストを設定し、対応するコンテンツを返します。

2.4. ルート ルートで DELETE リクエストを設定し、対応するコンテンツを返します。

2.5. ルート ルートで PAATCH リクエストを設定し、対応するコンテンツを返します。 

3. 静的ファイル


1. アプリケーションビルダー

アプリ ビルダー ツールを使用して、 express-generator アプリのスケルトンをすばやく作成します。

npx コマンド (Node.js 8.2.0 で利用可能) を使用してアプリ ジェネレーターを実行できます 。

npx express-generator

以前の Node バージョンの場合は、app-generator をグローバル npm パッケージとしてインストールし、起動します。

npm install -g express-generator
express

実行が完了すると、次のようになります。

デフォルトのページテンプレートはjadeです

Express -h コマンド オプションとオプション:

$ express -h

  Usage: express [options] [dir]

  Options:

        --version        版本编号
    -e, --ejs            增加ejs引擎支持
        --pug            增加pug引擎支持
        --hbs            增加handlebars 引擎支持
    -H, --hogan          增加hogan.js引擎支持 
    -v, --view <engine>  增加视图引擎支持(dust|ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
        --no-view        使用静态html而不是视图引擎
    -c, --css <engine>   增加样式表引擎支持(less|stylus|compass|sass) (defaults to plain css)
        --git            增加 .gitignore
    -f, --force          强制非空目录
    -h, --help           输出使用信息

次に、依存関係をインストールします。

cd myapp
npm install

コマンド ウィンドウで npm start を実行してプロジェクトを開始します。

npm start

デフォルトのインターフェースは 3000 です。ブラウザに http://localhost:3000/ と入力すると、ページは次のようになります。

2. 基本的なルーティング

ルーティングとは、特定のエンドポイントに対するクライアントのリクエスト (URI (またはパス) と特定の HTTP リクエスト メソッド (GET、POST など)) にアプリケーションがどのように応答するかを決定することを指します。

各ルートには、ルートが一致したときに実行される 1 つ以上のハンドラー関数を含めることができます。

ルート定義は次の構造を取ります。

app.METHOD(PATH, HANDLER)
  • appexpress のインスタンス です 。
  • METHOD 小文字の HTTP リクエスト メソッドです
  • PATH サーバー上のパスです。
  • HANDLER ルートが一致したときに実行される関数です。

対応するルーティング方法:

  • ACL
  • 練る
  • チェックアウト
  • 接続
  • コピー
  • 消去
  • 得る
  • リンク
  • ロック
  • エムサーチ
  • マージ
  • MKアクティビティ
  • MKカレンダー
  • MKCOL
  • 動く
  • 通知する
  • オプション
  • パッチ
  • 役職
  • プロフィンド
  • プロパッチ
  • パージ
  • 置く
  • リバインド
  • 報告
  • 検索
  • ソース
  • 購読
  • 痕跡
  • 解放する
  • リンクを解除する
  • ロックを解除する
  • 購読を解除する
  • acl
  • 練る
  • チェックアウト
  • 接続
  • コピー
  • 消去
  • 得る
  • リンク
  • ロック
  • m-検索
  • マージ
  • mkアクティビティ
  • エムカロリー
  • エムコル
  • 動く
  • 通知する
  • オプション
  • パッチ
  • 役職
  • プロファインド
  • プロパッチ
  • パージ
  • 置く
  • 再バインド
  • 報告
  • 検索
  • ソース
  • 購読
  • 痕跡
  • 解放する
  • リンクを解除する
  • ロックを解除する
  • 購読を解除する

以下は、一般的に使用されるいくつかの方法で各ルートをテストする簡単な方法です。

2.1. ルートの下に GET リクエストを設定し、対応するコンテンツを返します。

app.get('/', (req, res) => {
    res.send("这是一个GET请求,返回的结果!")
})

 2.2. ルートの下に POST リクエストを設定し、対応するコンテンツを返します。

app.post('/', (req, res) => {
    res.send("这是一个POST请求,返回的结果!")
})

 2.3. ルートの下に PUT リクエストを設定し、対応するコンテンツを返します。

app.put('/', (req, res) => {
    res.send("这是一个PUT请求,返回的结果!")
})

2.4. ルート ルートで DELETE リクエストを設定し、対応するコンテンツを返します。

app.delete('/', function(req, res, next) {
  res.send("这是一个DELETE请求,返回的结果!");
});

2.5. ルート ルートで PAATCH リクエストを設定し、対応するコンテンツを返します。 

app.patch('/', function(req, res, next) {
  res.send("这是一个PATCCH请求,返回的结果!");
});

3. 静的ファイル

画像、CSS、JavaScript、HTML、フォント ファイルなどの一般的な静的ファイルと同様に、Express は処理用の組み込みミドルウェア関数 Express.static() を提供します。静的サーブに基づく

構文構造は次のとおりです。

express.static(root, [options])

注: パフォーマンスを向上させるには、リバース プロキシを使用してサーバーの静的リソースのパフォーマンスを向上させます。

root パラメータは、静的リソースのルート ディレクトリを指定します。

次の表では、オプション オブジェクトのプロパティについて説明します。

属性 説明 タイプ デフォルト
dotfiles ドット ファイル (ドット「.」で始まるファイルまたはディレクトリ) の処理方法を決定します。 "無視"
etag etag 生成を有効または無効にする

注: 弱い ETag は常に送信されます。express.static
ブール値 true
extensions ファイル拡張子のフォールバックを設定する: ファイルが見つからない場合は、指定された拡張子を持つファイルを検索し、最初に見つかったファイルを提供します。例:。['html', 'htm'] 混合 false
fallthrough クライアント エラーを未処理のリクエストとしてフォールスルーさせ、それ以外の場合はクライアント エラーを転送します。 ブール値 true
immutable 応答ヘッダーのディレクティブを有効または無効にします。有効にした場合、キャッシュを有効にするためにこのオプションも指定する必要があります。このディレクティブは、サポートされているクライアントが、ファイルが変更されたかどうかをチェックするオプションの存続期間中、条件付きリクエストを行うことを防ぎます。immutableCache-ControlmaxAgeimmutablemaxAge ブール値 false
index 指定したディレクトリインデックスファイルを送信します。ディレクトリのインデックス作成を無効にするには、 に設定します。 混合 「インデックス.html」
lastModified ヘッダーをオペレーティング システム上のファイルの最終変更日に設定します。Last-Modified ブール値 true
maxAge

キャッシュ制御ヘッダーの maxAge プロパティをミリ秒単位または ミリ秒形式の文字列で設定します。

番号 0
redirect パス名がディレクトリの場合は、末尾の「/」に続けてリダイレクトします。 ブール値 true
setHeaders ファイルとともに提供する HTTP ヘッダーを設定する関数。 関数

public たとえば、ディレクトリ内の画像、CSS ファイル、JavaScript ファイルは、次のコードを通じて公開できます 。

app.use(express.static('public'))

パブリック ディレクトリに HTML ファイルを作成します (例: test.html)。 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    H5 页面
</body>
</html>

サービスを開始し、http://localhost:3000/test.html にアクセスします。

複数の静的リソース ディレクトリを使用する場合は、 express.static ミドルウェア関数を複数回呼び出してください。

app.use(express.static('public'))
app.use(express.static('files'))

静的リソース ファイルにアクセスする場合、express.static ミドルウェア機能はディレクトリが追加された順序に従って必要なファイルを検索します。

現在、静的ファイルのディレクトリにプレフィックスを追加することもできます。例: static

app.use('/static', express.static('public'))

するとアクセスアドレスは http://localhost:3000/static/test.html になります。

おすすめ

転載: blog.csdn.net/u014388408/article/details/131752406