我这么做是值得的:
1) 在任何页面基上指定横幅.html:
{% if cookies_check() %}
{# then user has already consented so no requirement for consent banner #}
{% else %}
{# show a cookie consent banner #}
<div id="cookie-consent-container">
<button id="cookie-consent">I Consent</button>
</div>
<script>
var fn = function () {
document.cookie = "cookie_consent=true";
document.getElementById('cookie-consent-container').hidden = true;
};
document.getElementById('cookie-consent').onclick = fn;
</script>
{% endif %}
2) 将函数注入jijna2以检查cookies:
@app.app_context_processor
def inject_template_scope():
injections = dict()
def cookies_check():
value = request.cookies.get('cookie_consent')
return value == 'true'
injections.update(cookies_check=cookies_check)
return injections
我还使用dev控制台通过探索
document.cookies
. 最初生成的cookies似乎只有Google Analytics。