gpt4 book ai didi

javascript - 请勿跟踪 Express 应用程序中的实现情况

转载 作者:太空宇宙 更新时间:2023-11-04 02:32:47 25 4
gpt4 key购买 nike

我想添加一个名为“同意”的功能,该功能使用浏览器中名为“请勿跟踪”(DNT) 的功能。该功能的作用是当 DNT 未激活或其状态为“1”时,在渲染的页面上添加 Google 分析。以下是我在 Nodejs Express 应用程序中想到的内容:

var concent = function(req, res) {
if(req.header.dnt == '0' || req.header.dnt == null)
{return true;}
else{return false;}
}

Jade 中的 View 如下所示:

if consent
script.
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-11111111-1', 'yourdomain.com');
ga('send', 'pageview');

不幸的是,当我测试它时,它似乎不起作用......

最佳答案

req.header是一个函数,而不是一个对象。至少对我来说,实际的 header 存储在 req.headers (复数)下 - 但这似乎是 Node.js 的 native 行为: HTTP request.headers

var consent = function(req, res) {
var DNT = req.header('dnt');
return typeof DNT == 'undefined' || DNT == '0';
}

关于javascript - 请勿跟踪 Express 应用程序中的实现情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25062477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com