asp.net – 你可以从请求变量确定时区吗?

有没有办法在服务器端做一个时区偏移,通过HTTP在请求中读取东西,而不是发送一切给客户端,让它处理它?

解决方法

这更复杂,但我不得不求助于这种情况,因为机器和用户配置文件设置有时不匹配您的访问者的首选项。例如,一位英国访客从澳大利亚服务器临时访问您的网站。

>按照@balabaster的建议使用地理位置服务(例如maxmind.com),以使区域匹配其IP(Global.Session_Start是最好的)。这是一个很好的匹配本地ISPs,但不是那么好的AOL。将偏移量存储在会话cookie中。
>或者,当用户进入网站时,使用JavaScript将时区偏移作为表单提交/重定向的一部分。这是浏览器的当前偏移量,但不一定是访问者的首选区域。使用此值作为认值;存储在另一个会话cookie中。

<script type="text/javascript" language="JavaScript">
var offset = new Date();
document.write('<input type="hidden" id="clientTzOffset" name="clientTzOffset" value="' + offset.getTimezoneOffset() + '"/>');
</script>

>允许访问者通过永久Cookie(对于匿名用户)和其帐户配置文件中的字段(如果已通过身份验证)更新区域。

持久值#3覆盖会话值。您还可以为经过身份验证的用户存储相同的持久性cookie,以便在登录之前显示时间。

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....