检测和存储 Web 应用程序客户端所在时区的最佳方法是什么?

2024-02-27

我有一个多时区 Web 应用程序,它将所有 UTC 日期时间值存储在数据库中,当服务器上发生操作时,我可以轻松地将时间转换为 UTC。

但是,当客户端输入时间或时间跨度时,检测和存储它的最佳方法是什么?

我目前正在做以下事情:

  1. 获取 Date.getTimezoneOffset() 的值 (javascript)
  2. 通过页面上的 ICallbackEventHandler 将其发布到服务器端代码。
  3. 将该值存储在会话中
  4. 对于任何后续请求,使用客户端的时区计算输出/输入日期时间值。

无论实际实现如何,这似乎都是一个不优雅的解决方案。有人有更好的方法吗?


我正在做一些非常相似的事情,但我现在认为我更喜欢使用javascript在客户端将所有时间转换为本地时间。服务器将在生成的页面中给出所有 UTC 时间,并且javascript页面加载后将对其进行转换。

这消除了服务器端代码的混乱,因为我总是知道现在是什么时间(UTC)。在客户端,我正在使用jqueryeach()函数一次格式化所有时间值。我把每一次都写成Unix时间在隐藏字段中,以便于处理jquery.

我发现这种方法的唯一问题是:

a)我还没有一个非常好的日期/时间格式化例程javascript, and

b) 如果用户有javascript关闭,然后就不起作用了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测和存储 Web 应用程序客户端所在时区的最佳方法是什么? 的相关文章

  • 使用Doctype让scrollTop返回0,为什么?

    当我将此 Doctype 放入我的文档中时document body scrollTop返回零 这是为什么 当您使用该 Doctype 时 您会将每个当前浏览器放入所谓的几乎标准模式 http hsivonen iki fi doctype
  • DLL 需要访问其应用程序的符号

    在 C 中 DLL 是否可以访问加载它的应用程序的某些符号 我有一个加载插件 dll 的应用程序 这些插件需要访问该应用程序的某些API 是否可以在不创建共享此 API 的新 DLL 的情况下实现此目的 函数指针结构适合这种情况吗 示例 主
  • javascript 中的自动转换:像 stringvar = 1+stringvar 这样完成时,不是应该将字符串转换为数字吗?

    火狐32 Win 7 使用暂存器时 var a 2 a 1 1 a console log a typeof a a 1 a 1 console log a typeof a 在控制台中导致 02 string 101 number 难道我
  • 是否有更好(更简单)的方法来获取特定域 SID?

    我被指派修改 WinForms 应用程序 主要检查登录用户是否属于特定域 这是我到目前为止所想出的 byte domainSid var directoryContext new DirectoryContext DirectoryCont
  • 如何使用 ASP.NET MVC 4.0 DonutOutputCache VaryByCustom 使缓存失效

    我正在为我的 ASP NET 应用程序使用 DevTrends MvcDonutCaching 包 它工作得很好 我目前遇到的一个问题是使我为子操作设置的 VaryByCustom 缓存无效 这是我用于 VaryByCustom 设置的一些
  • 输入号码时自动格式化 SSN

    我有一个文本字段 用户输入 SSN 号码 输入自身时 它应该格式化 就像关于文本字段的更改 它应该格式化999 999 999以这种方式在显示器本身上 kottenator 的脚本几乎已经完成 但它每隔 3 位数字就中断该值 而不是 3 位
  • 如何列出特定服务器的所有成员?

    我的代码是 const list client guilds find id 335507048017952771 for user of list users console log user 1 username 这实际上没有任何作用
  • 接口中的私有成员

    是否可以在 NET 接口中创建私有成员 我听说现在可以了 但我的 IDE 拒绝了 public interface IAnimal void SetDefaultName string name ChangeName name privat
  • 如何检查是否发生溢出? [复制]

    这个问题在这里已经有答案了 可能的重复 检测 C C 中整数溢出的最佳方法 https stackoverflow com questions 199333 best way to detect integer overflow in c
  • C#中如何将委托转换为对象?

    我正在使用反射类来调用其他 dll 上的一些方法 方法的参数之一是委托类型 我想通过使用反射来调用这个方法 所以我需要将函数参数作为对象数组传递 但我找不到任何关于 如何将委托转换为对象 提前致谢 委托是一个对象 只需像平常一样创建预期的委
  • 在成功回调之前修改 JSONP 结果

    我想从外部服务加载一些 JSON 数据 然而 它提供 foo bar useful 而我真正关心的是 有用 的部分 我需要将那部分传递给success打回来 我正在尝试使用Deferred一次从多个数据源加载 类似this https st
  • Twitter 引导选项卡和 JavaScript 事件

    我正在一个项目中使用 twitter bootstrap 特别是它的选项卡功能 http twitter github com bootstrap javascript html tabs http twitter github com b
  • 如何定义 Swagger UI 参数的默认值?

    我已将 Swagger Swashbuckle 集成到 NET Core 2 2 API 项目中 一切都很好 我的要求纯粹是为了方便 考虑以下 API 方法 public Model SomeEstimate SomeRequest req
  • “sizeof”对不完整类型列表结构 C 的无效应用

    我正在尝试实现一种处理页面错误的替换算法 因此 我尝试使用 malloc 创建一个循环链表 但出现以下错误 无效的应用程序sizeof to incomplete typepageInMemory 以下是代码 typedef struct
  • System.Drawing.Icon 构造函数抛出“操作成功完成”异常

    在 Windows XP 计算机上 以下代码抛出 System ComponentModel Win32Exception 并显示消息 操作成功完成 System Drawing Icon icon new System Drawing I
  • std::regex 转义正则表达式中使用的特殊字符

    我是字符串来创建一个std regex FILE 作为单元测试的一部分 检查一些打印文件名的异常输出 在 Windows 上失败并显示 regex error error escape 表达式包含无效的转义字符或尾随转义 因为 FILE 宏
  • 正则表达式基于组的不同替换?

    所以我对正则表达式比较陌生 并且做了一些练习 我正在玩一个简单的 混淆器 它只是寻找 dot or dot or at or at 不区分大小写 并且在匹配项之前或之后有或没有任意数量的空格 这是针对通常情况的 someemail AT d
  • 为 C++ 类播种 rand()

    我正在开发一个 C 类 它使用rand 在构造函数中 我真的希望这个班级在几乎所有方面都能照顾好自己 但我不知道在哪里播种rand 如果我播种rand 在构造函数中 每次构造我的对象类型的新实例时都会对其进行播种 因此 如果我按顺序创建 3
  • 构建 OpenCV 时出错 :: MonitorFromRect 未在此范围内声明

    我试图建立OpenCV version 2 4 8与它一起使用CodeBlocks and MinGw 我按照以下指示进行操作here http kevinhughes ca tutorials opencv install on wind
  • GetActiveObject() 与 GetObject() -- MK_E_UNAVAILABLE 错误

    All 我在将一些 VBA 代码转换为 C 时遇到一些问题 我们有一个充当本地 COM 服务器的第 3 方应用程序 在我们使用的VBA代码中获取对象 获取对现有对象的引用 e g Set appHandle GetObject ProgId

随机推荐

  • Internet Explorer 10/11 和旧的 .net Framework 1.1 网站的兼容性问题

    场景 我有一个用 net 框架1 1 开发的非常旧的网站 该网站在 Internet Explorer 10 11 中存在多个问题 可以使用兼容性视图进行修复 问题 问题是框 架 1 1 无法将 Internet Explorer 10 1
  • Eclipse 抽象语法树差异

    在 Eclipse 中给出以下代码 import org eclipse jdt core dom AST import org eclipse jdt core dom ASTParser import org eclipse jdt c
  • 递归包含所有模型子目录

    如何递归加载 models 和 lib 目录中的所有目录 在 application rb 中 我有以下几行 config autoload paths Dir Rails root join app models config autol
  • Xcode:UI 自动化:waitForValid()

    有一个 waitForInvalid 但 waitForValid 函数呢 由于某种原因 push popTimeout 在很多情况下对我不起作用 苹果 如果元素是 有效 但不是 可见 则可能返回得太早 这应该等到其可见且有效 UIATar
  • Firestore 添加文档 ||离线||回调[重复]

    这个问题在这里已经有答案了 期间未收到在集合中添加文档的回调offline 它在在线模式下运行良好 但是 文档正在被添加 并且侦听集合的侦听器正在被添加document快照 let database Firestore firestore
  • 带有外部第三方 jar 的 Eclipse 插件

    我有一个 RCP 应用程序 其中包含不同的插件 在其中一个插件中 我使用外部第三方 jar 由于版权原因 我无法将该 jar 捆绑到我的产品中 所以我尝试在运行时将 jar 作为外部 jar 包含在内 我所做的如下 在插件manifest
  • 为什么mysql无法创建新用户?

    mysql gt select user host from mysql user user host root 127 0 0 1 root 1 debian sys maint localhost developer localhost
  • 使用 QT 读取 Linux/Ubuntu 上的电池状态

    我目前正在使用 qt 开发一个应用程序 目标是运行 ubuntu 14 04 的平板电脑 由于设备上的电池指示器很差 并且应用程序将长时间全屏运行 因此我想在应用程序内显示电池指示器 搜索发现主要是旧结果或对 windows android
  • 找不到元素“context:annotation-config”的声明

    每当我写作时 春天
  • Highcharts,使 y 轴从零开始

    我想这对某些人来说应该是理所当然的 但我在那些可怕的自动生成的文档中找不到它 您应该在图表对象中添加 yAxis 属性min 0这是一个类似的问题 如何设置 Highcharts 图表最大 y 轴值 https stackoverflow
  • 让Git在分支之间保留不同的section内容

    我正在开发一个用户脚本 我的雇主要求我开始通过 Git 进行管理 现在 我有一个稳定文件和一个测试版文件 以便组织中的每个人都可以安装稳定代码 但如果愿意 可以选择帮助测试测试版添加内容 该文件的某些部分应保持不同 内容和更改不应在分支之间
  • 使用 pandoc ruby​​ 将 HTML 和内联 Mathjax 数学转换为 LaTeX

    我正在构建一个Rails应用程序 并且正在寻找一种方法将带有html和内联MathJax数学 TeX 的数据库条目转换为LaTeX以创建pdf 我发现了和我类似的问题 使用 pandoc 将 html mathjax 转换为 Markdow
  • 这个==- JavaScript 运算符是什么?

    当我发现时 我跌跌撞撞地尝试不同的条件 or 在 JS 控制台中 您可以编写 var a 那么以下是正确的 a 但这是错误的 a 然而 如果你说 a or a 那么这是什么俏皮的东西 操作员 他们不是不同的运营商 Writing a 被解析
  • 使用 XAMPP 包在本地显示 php 站点时出现问题。站点在远程服务器上运行良好

    我在 stackoverflow com 上发表的第一篇文章 一个很棒的网站 我希望我的帖子能为他人的利益做出贡献 情况 我受委托翻新一处really小型 现有 php 驱动的网站 于是 我开始搭建我的环境 Dreamweaver 已安装
  • Selenium 使用 Firefox 配置文件

    我尝试在 Windows 10 系统上使用 Selenium Webdriver 和 Python 来实现浏览器操作的一些自动化 但我有这个问题 Selenium 启动的 Firefox 窗口没有 看到 我已经登录 并且目标站点将我发送到登
  • R 闪亮销毁观察事件

    我是 R Shiny 的新手 我正在尝试创建一个带有一些动态生成的按钮的应用程序 每个按钮都有一个与之关联的observeEvent 我想添加一个重置按钮来删除所有observeEvents 我浏览了一些链接 发现 destroy 函数可以
  • ASP.NET MVC3 中的 HtmlHelper 使用 Action 作为模板:Razor 语法?

    首先我要说的是 也许有更好的方法可以做到这一点 而 Razor 正在为我们指明道路 无论如何 我有一个 HTML 帮助器 它充当某种重复器 但在任意次数的重复之后 它会插入一个备用模板 最明显的用途 在 x 个单元格之后开始新行的表格 助手
  • HTML、jQuery:将一个元素的宽度绑定到另一个元素

    我想将第一个元素 foo 的宽度绑定到第二个元素 bar 的宽度 我希望当元素 bar 的宽度更改时 元素 foo 的宽度自动更改 我知道我可以将元素 foo 的宽度设置为元素 bar 的宽度 正如我们在下面的代码中看到的那样 但这是一次性
  • Visual Basic 2008 中的集合初始化语法?

    我试图确定 Visual Basic 2008 如果重要的话 是 Express 版本 中是否有一种方法可以像 JavaScript 或 Python 那样进行内联集合初始化 Dim oMapping As Dictionary Of In
  • 检测和存储 Web 应用程序客户端所在时区的最佳方法是什么?

    我有一个多时区 Web 应用程序 它将所有 UTC 日期时间值存储在数据库中 当服务器上发生操作时 我可以轻松地将时间转换为 UTC 但是 当客户端输入时间或时间跨度时 检测和存储它的最佳方法是什么 我目前正在做以下事情 获取 Date g