在Vue應(yīng)用程序中,我們經(jīng)常要獲取referer來進(jìn)行一些安全性驗(yàn)證或者跟蹤訪問來源等操作。獲取referer的方法有很多種,下面我們來逐一討論。
首先,我們可以直接在Vue實(shí)例中使用window對象來獲取referer,如下所示:
mounted() { this.referer = window.document.referrer; },
以上代碼將會在組件渲染后立即獲取referer,并將其存儲在組件的data屬性中。
除此之外,我們還可以利用Vue-Router提供的$route對象來獲取referer。具體代碼如下:
mounted() { this.referer = this.$route.query.referer; },
在以上代碼中,我們將referer存儲在了URL參數(shù)中,然后可以在Vue實(shí)例中使用$route對象來獲取它。
最后,如果你使用了Nuxt.js框架,你可以通過獲取原始請求頭的方式來獲取到referer,具體代碼如下:
mounted() { this.referer = this.$axios.$get('http://localhost:3000/getRefferer', { headers: { 'referer': this.$nuxt.context.req.headers.referer, } }); },
以上代碼中,我們首先使用了Nuxt.js提供的內(nèi)置的Axios實(shí)例來發(fā)起HTTP請求。同時(shí),我們還指定了HTTP請求頭,并在其中添加了referer頭。在服務(wù)端,我們可以從HTTP Request Header中獲取referer并返回給客戶端。
上一篇vue獲取public
下一篇vue獲取props