在某些情况下,${documentReferrer}
可能为空,即使 document.referrer
显示为 "https://www.google.com/
"。这可能是由于以下原因:
document.referrer
可能还没有被设置。确保脚本在页面加载完成后运行,或者使用 window.onload
事件来确保页面加载完成后再执行脚本。window.onload = function() {
console.log(document.referrer);
};
document.referrer
。这通常是出于安全原因,以防止跨站脚本攻击(XSS)。在这种情况下,你可能需要使用服务器端代码来获取 referrer。document.referrer
将为空。${documentReferrer}
。如果你在模板引擎中使用了这个变量,请确保模板引擎正确地解析了它。如果以上方法都无法解决问题,你可以尝试使用以下代码来获取 referrer:
function getReferrer() {
var referrer = document.referrer;
if (!referrer && window.performance) {
var navigation = window.performance.getEntriesByType("navigation")[0];
if (navigation && navigation.type === "reload") {
referrer = navigation.redirectSource || "";
}
}
return referrer;
}
console.log(getReferrer());
这段代码首先检查 document.referrer
,如果为空,则尝试使用 window.performance
API 来获取 referrer。
领取专属 10元无门槛券
手把手带您无忧上云