Express.js の Request オブジェクトと Response オブジェクトは、Express アプリケーションで使用されるコールバック関数のパラメーターです。
Express.js 要求オブジェクトは HTTP 要求を表し、要求クエリ文字列、パラメーター、本文、HTTP ヘッダーなどのプロパティを持ちます。
構文:
app.get('/', function (req, res) { // -- })
Express.js リクエスト オブジェクトのプロパティ
次の表は、リクエスト オブジェクトに関連付けられたプロパティの一部を示しています。
索引 | プロパティ | 説明 |
---|---|---|
1. | 必須アプリ | これは、ミドルウェアを使用している Express アプリケーションのインスタンスへの参照を保持するために使用されます。 |
2. | req.baseurl | ルーターインスタンスがマウントされた URL パスを指定します。 |
3. | 必須本文 | これには、リクエスト本文で送信されたデータのキーと値のペアが含まれます。デフォルトでは、これは未定義であり、body-parser などのボディ解析ミドルウェアを使用するときに設定されます。 |
4. | 必須Cookie | Cookie パーサー ミドルウェアを使用する場合、このプロパティは、リクエストによって送信された Cookie を含むオブジェクトになります。 |
5. | 新鮮さが必要 | リクエストが「新鮮」であることを指定します。これは req.stale の逆です。 |
6. | 必須ホスト名 | これには、「host」http ヘッダーのホスト名が含まれます。 |
7。 | 要求IP | リクエストのリモート IP アドレスを指定します。 |
8. | 要求IP数 | トラスト プロキシ設定が true の場合、このプロパティには、?x-forwarded-for? で指定された IP アドレスの配列が含まれます。リクエストヘッダー。 |
9. | 必須元の URL | このプロパティは req.url によく似ています。ただし、元のリクエスト URL は保持されるため、内部ルーティングの目的で req.url を自由に書き換えることができます。 |
10. | 必須パラメータ | 名前付きルート「parameters」にマップされたプロパティを含むオブジェクト。たとえば、ルート /user/:name がある場合、「name」プロパティは req.params.name として使用できます。このオブジェクトのデフォルトは {} です。 |
十一。 | 必須パス | リクエスト URL のパス部分が含まれます。 |
12. | 必須プロトコル | TLS で要求された場合の要求プロトコル文字列「http」または「https」。 |
13. | リクエストクエリ | ルート内の各クエリ文字列パラメータのプロパティを含むオブジェクト。 |
14. | 必須ルート | 現在一致しているルート、文字列。 |
15。 | 安全性が必要 | TLS 接続が確立されている場合に true となるブール値。 |
16. | req.signedcookies | Cookie パーサー ミドルウェアを使用する場合、このプロパティには、リクエストによって送信され、署名されていない、すぐに使用できる署名付き Cookie が含まれます。 |
17. | 古いものを要求する | これはリクエストが「古い」かどうかを示し、req.fresh の逆です。 |
18. | 必須サブドメイン | これは、リクエストのドメイン名のサブドメインの配列を表します。 |
19. | 必須x時間 | リクエストの「x-requested-with」ヘッダーフィールドが「xmlhttprequest」の場合に true となるブール値。リクエストが jQuery などのクライアント ライブラリによって発行されたことを示します。 |
リクエストオブジェクトのメソッド
以下は、一般的に使用されるリクエスト オブジェクト メソッドのリストです。
req.accepts (タイプ)
このメソッドは、リクエストの Accept HTTP ヘッダー フィールドに基づいて、指定されたコンテンツ タイプが受け入れられるかどうかを確認するために使用されます。
例:
req.accepts('html'); //=>?html? req.accepts('text/html'); // => ?text/html?
req.get(フィールド)
このメソッドは、指定された HTTP リクエスト ヘッダー フィールドを返します。
例:
req.get('Content-Type'); // => 'text/plain' req.get('content-type'); // => 'text/plain' req.get('Something'); // => undefined
req.is(タイプ)
このメソッドは、受信リクエストの 'Content-Type' HTTP ヘッダー フィールドが type パラメーターで指定された MIME タイプと一致する場合に true を返します。
例:
// With Content-Type: text/html; charset=utf-8 req.is('html'); req.is('text/html'); req.is('text/*'); // => true
req.param(名前 [, デフォルト値])
このメソッドは、param name が存在する場合、その値をフェッチするために使用されます。
例:
// ?name=sasha req.param('name') // => 'sasha' // POST name=sasha req.param('name') // => 'sasha' // /user/sasha for /user/:name req.param('name') // => 'sasha'