2015-11-07 100 views
1

我想要從快遞服務器上獲取網站的網址。Express js image referer undefined

var express = require('express') 
    , app  = express(); 

app.get('/image', function (req, res) { 
    console.log(req.headers.referer || req.headers.referrer); 
    res.sendFile('image.jpg', {root: './public'}); 
}); 

app.listen(3000); 

當我去到一個網站,並改變圖像的srchttp://localhost:3000/image我在控制檯上得到要求的圖像的頁面的URL。有時我得到undefined

這是正常的嗎?有沒有一種方法可以隨時從圖像加載的位置獲取網站的網址?

回答

2

是的這是正常的, ,因爲referrer字段是Web瀏覽器發送到Web服務器的HTTP請求的可選部分。而且引用者信息可能會侵犯隱私,因此一些網頁瀏覽器允許用戶禁用引薦者信息的發送。

+0

這意味着我總是無法獲得加載我的圖片的網站域名? – Khalid

+0

我認爲,你只能通過cookie或令牌來識別用戶。你可以通過Cors來阻止一些域名。但僅此而已。當然,你可以使用referer,但它可以是空的,甚至可以修改(然後你收到錯誤的引用者),因此它是好的作爲癮信息,但沒有更多 –

+1

感謝您的幫助 – Khalid