2016-03-21 24 views
0

リクエストオブジェクトからリファラーを取得するにはどうすればよいですか?変数this.request.headers['referer']は空です。nodejsでkoaを使って "HTTP_REFERER"を取得するには?

+0

はあなたにリファラが_is_ていることを確認しています

このデモコード:別のページで参照するとき

'use strict' const Koa = require('koa') let app = new Koa() app.use(function *() { console.log(this.headers) }) app.listen(8888) 

これをもたらしました? – thomasd

+0

どうすれば 'this.request.headers.referrer || this.request.headers.referer'? – migg

+0

は2つのフォームでそれを試しました – Blacksonic

答えて

4

あなたのページが別のページで参照された場合、リファラーはthis.headers.refererからアクセス可能です。

ページが別のページで参照されなかった場合(直接ロードされた場合)、this.headers.refererは未定義です。

{ host: 'localhost:8888', 
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0', 
    accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
    'accept-language': 'en-US,en;q=0.5', 
    'accept-encoding': 'gzip, deflate', 
    referer: 'http://localhost:1111/', 
    connection: 'keep-alive' } 

そして、この直接ロードする場合:

{ host: 'localhost:8888', 
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0', 
    accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 
    'accept-language': 'en-US,en;q=0.5', 
    'accept-encoding': 'gzip, deflate', 
    connection: 'keep-alive' } 
+1

私の質問にも答えがあった:) – Blacksonic

関連する問題