您可以使用Javascript并在cookie中设置客户端的时区.您甚至可以使用AJAX请求,然后将偏移量发送到服务器并保存在客户端的会话中.
var offset = new Date().getTimezoneOffset();
Run Code Online (Sandbox Code Playgroud)
描述
时区偏移是UTC与本地时间之间的差异(以分钟为单位).注意>这意味着如果本地时区落后于UTC,则偏移量为正,如果前置,则偏移量为负.例如,如果您的时区是UTC + 10(澳大利亚东部标准时间),则将返回-600.夏令时可以防止该值即使对于给定的区域设置也是常量
Mozilla Javascript参考:getTimezoneOffset
如果您可以轻松地从 Flask 中获取用户的 IP 地址(也许从request对象中?),您可以使用地理定位。例如通过http://www.hostip.info/。
但它可能不是 100% 万无一失。例如,如果某人使用 VPN 或其他类型的代理,您将看不到他的“真实”IP 地址。