Bla*_*nic 2 javascript node.js koa
如何从请求对象中获取引荐来源?变量this.request.headers['referer']是空的.
如果您的页面被另一个页面引用,则可以通过该访问者访问该引用this.headers.referer.
如果页面没有被另一个页面引用(直接加载),this.headers.referer则将是未定义的.
这个演示代码:
'use strict'
const Koa = require('koa')
let app = new Koa()
app.use(function * () {
console.log(this.headers)
})
app.listen(8888)
Run Code Online (Sandbox Code Playgroud)
当被另一页引用时产生这个:
{ 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' }
Run Code Online (Sandbox Code Playgroud)
这个直接加载时:
{ 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' }
Run Code Online (Sandbox Code Playgroud)