抢购如何获取服务器时间_抢购时间设置

hacker|
117

文章目录:

asp.net 商品秒杀倒计时,如何获取服务器端时间?

asp.net你获取时间时,应该就是服务器的时间。而不是客户端的时间。

除非你用的是前段的js获取的时间,那个时间就是客户端时间。

2.如何获取服务器当前时间

获取服务器返回的头部信息中的Date属性

由于得到的是GMT(格林尼治时间)

所以要转换成东八区的时间

这个就是响应服务器的当前时间。

var date = new Date($.ajax({async: false}).getResponseHeader("Date"));

var bom= date + (3600000 * 8);

var time = new Date(bom);

jQuery怎么获取服务器时间?

具体来说有这么几种思路吧:

轮询,就像你说的那样不间断的和服务器通信,比如每秒甚至更短就发起一次请求获取服务器时间,然后利用Ajax的readyState来确定从请求发起到收到回复过去的时间不会太长。

WebSocket,利用WebSocket来实时通信。

服务器当然不会蹦掉……而且如果你要做的是一个倒计时那情况就更简单了,比如说在倒计时结束之前服务器对这些请求都不回复,让请求TimeOut,只有在倒计时结束后才回复给客户端,这样就能节省流量。

而且现在有很多这种免费的时间API服务。这里:  就是一个。这个API会直接返回UTC字符串。如果担心服务器压力的话用这种服务就好了。

另外,很重要的一点要提醒你。不论是什么数据,不论是不是从客户端上提取出来的,只要是在客户端上处理的就必须默认这个数据不可靠。不论你怎么从服务器获取时间,你都要认为这个时间很有可能已经被动过了。如果是抽奖这样的任务的话必须全程在服务器上处理。客户端代码关于数据的功能只有两个:向用户显示数据,从用户提取数据。

1条大神的评论

  • avatar
    访客 2022-07-03 上午 01:40:37

    器当然不会蹦掉……而且如果你要做的是一个倒计时那情况就更简单了,比如说在倒计时结束之前服务器对这些请求都不回复,让请求TimeOut,只有在倒计时结束后才回复给客户端,

发表评论