Nodejs-request-object
Node.js-リクエストオブジェクト
*req* オブジェクトはHTTPリクエストを表し、リクエストクエリ文字列、パラメーター、ボディ、HTTPヘッダーなどのプロパティがあります。
リクエストオブジェクトのプロパティ
以下は、リクエストオブジェクトに関連付けられたいくつかのプロパティのリストです。
Sr.No. | Properties & Description |
---|---|
1 |
req.app このプロパティは、ミドルウェアを使用しているエクスプレスアプリケーションのインスタンスへの参照を保持します。 |
2 |
req.baseUrl ルーターインスタンスがマウントされたURLパス。 |
3 |
req.body リクエスト本文で送信されたデータのキーと値のペアが含まれます。 デフォルトでは未定義であり、 body-parser などのボディ解析ミドルウェアを使用すると読み込まれます |
4 |
req.cookies Cookieパーサーミドルウェアを使用する場合、このプロパティは、リクエストによって送信されたCookieを含むオブジェクトです。 |
5 |
req.fresh 要求が「新鮮」かどうかを示します。 req.staleの反対です。 |
6 |
req.hostname 「Host」HTTPヘッダーのホスト名が含まれます。 |
7 |
req.ip 要求のリモートIPアドレス。 |
8 |
req.ips 信頼プロキシ設定がtrueの場合、このプロパティには「X-Forwarded-For」リクエストヘッダーで指定されたIPアドレスの配列が含まれます。 |
9 |
req.originalUrl このプロパティはreq.urlとよく似ています。ただし、元の要求URLは保持されるため、内部ルーティングのためにreq.urlを自由に書き換えることができます。 |
10 |
req.params 名前付きルート「パラメーター」にマップされたプロパティを含むオブジェクト。 たとえば、ルート/user/:nameがある場合、「name」プロパティはreq.params.nameとして使用できます。 このオブジェクトのデフォルトは\ {}です。 |
11 |
req.path 要求URLのパス部分が含まれます。 |
12 |
req.protocol TLSで要求された場合の要求プロトコル文字列「http」または「https」。 |
13 |
req.query ルート内の各クエリ文字列パラメーターのプロパティを含むオブジェクト。 |
14 |
req.route 現在一致しているルート、文字列。 |
15 |
req.secure TLS接続が確立された場合に真となるブール値。 |
16 |
req.signedCookies Cookieパーサーミドルウェアを使用する場合、このプロパティには、リクエストによって送信され、署名されておらず使用可能な署名付きCookieが含まれます。 |
17 |
req.stale 要求が「古い」かどうかを示し、req.freshの反対です。 |
18 |
req.subdomains リクエストのドメイン名のサブドメインの配列。 |
19 |
req.xhr リクエストの「X-Requested-With」ヘッダーフィールドが「XMLHttpRequest」の場合にtrueになるブール値。リクエストがjQueryなどのクライアントライブラリによって発行されたことを示します。 |
リクエストオブジェクトメソッド
req.accepts(タイプ)
req.accepts(types)
このメソッドは、リクエストのAccept HTTPヘッダーフィールドに基づいて、指定されたコンテンツタイプが受け入れ可能かどうかを確認します。 以下はいくつかの例です-
//Accept: text/html
req.accepts('html');
//=> "html"
//Accept: text/*, application/json
req.accepts('html');
//=> "html"
req.accepts('text/html');
//=> "text/html"
req.get(field)
req.get(field)
このメソッドは、指定されたHTTP要求ヘッダーフィールドを返します。 以下はいくつかの例です-
req.get('Content-Type');
//=> "text/plain"
req.get('content-type');
//=> "text/plain"
req.get('Something');
//=> undefined
req.is(type)
req.is(type)
着信リクエストの「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(name [、defaultValue])
req.param(name [, defaultValue])
このメソッドは、param nameの値が存在する場合にそれを返します。 以下はいくつかの例です-
//?name=tobi
req.param('name')
//=> "tobi"
//POST name=tobi
req.param('name')
//=> "tobi"
///user/tobi for/user/:name
req.param('name')
//=> "tobi"