Koa.js-リクエストオブジェクト

Koa Requestオブジェクトは、ノードのバニラリクエストオブジェクトを抽象化したものであり、日常のHTTPサーバー開発に役立つ追加機能を提供します。Koaリクエストオブジェクトはコンテキストオブジェクトに埋め込まれています。this。リクエストを受け取ったら、リクエストオブジェクトをログアウトしましょう。

var koa = require('koa');
var router = require('koa-router');
var app = koa();

var _ = router();

_.get('/hello', getMessage);

function *getMessage(){
   console.log(this.request);
   this.body = 'Your request has been logged.';
}
app.use(_.routes());
app.listen(3000);

このコードを実行してに移動すると https://localhost:3000/hello、その後、次の応答を受け取ります。

コンソールで、リクエストオブジェクトがログアウトされます。

{ 
   method: 'GET',
   url: '/hello/',
   header: 
   { 
      host: 'localhost:3000',
      connection: 'keep-alive',
      'upgrade-insecure-requests': '1',
      'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) 
         AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36',
      accept: 'text/html,application/xhtml+xml,
         application/xml;q = 0.9,image/webp,*/*;q = 0.8',
      dnt: '1',
      'accept-encoding': 'gzip, deflate, sdch',
      'accept-language': 'en-US,en;q = 0.8' 
   }
}

このオブジェクトを使用して、リクエストの多くの便利なプロパティにアクセスできます。いくつかの例を見てみましょう。

request.header

すべてのリクエストヘッダーを提供します。

request.method

リクエストメソッド(GET、POSTなど)を提供します

request.href

完全なリクエストURLを提供します。

request.path

リクエストのパスを提供します。クエリ文字列とベースURLなし。

request.query

解析されたクエリ文字列を提供します。たとえば、次のようなリクエストでこれをログに記録すると、https://localhost:3000/hello/?name=Ayush&age=20&country=India、次に次のオブジェクトを取得します。

{
   name: 'Ayush',
   age: '20',
   country: 'India'
}

request.accepts(type)

この関数は、要求されたリソースが指定された要求タイプを受け入れるかどうかに基づいて、trueまたはfalseを返します。

あなたはでドキュメント内の要求オブジェクトの詳細を読むことができます要求。