检索http请求的日期/时间

检索http请求的日期/时间

问题描述:

是否可以在ASP.NET(最好是VB.NET)中检索请求的日期/时间?检索http请求的日期/时间

我试过HttpContext.Current.Request.Headers.Get("date"),但它什么也没有返回(null)。

+0

当前请求可能在DateDate.Now?或者我错过了什么? – Espo 2009-10-19 13:00:38

那么,DateTime.Now将在大多数情况下完成这项工作。如果你想知道客户端机器上的日期和时间,可以通过添加/减去客户机的时区偏移量来近似。

+0

是否有可能为http请求获取唯一的ID?也许我可以做这个工作 – craig 2009-10-19 13:10:08

+0

@craig:你想做什么? 'Guid.NewGuid()'非常独特。 – 2009-10-19 13:21:34

根据w3c HTTP请求中没有“Date”标头(但HTTP响应中有一个),所以只能确定ASP.NET何时收到特殊请求,而不是何时发送。如果您需要接收HTTP请求的时间,您可以使用DateTime.Now,但是如何以最佳方式做到这一点,只有在您将描述您的任务时才能回答更多细节。

+0

我正在创建一个sql记录器,基本上有一个请求进来,任何SQL查询都保存到数据库中的表。但是,我需要以某种方式将每个请求的sql查询分组(因为可能有很多)。我想我可以得到请求的日期/时间,并且每次比较一下这个请求是否是新的请求。或者,如果我可以得到request.id?这将是明智的。 – craig 2009-10-19 13:30:24

+0

您可以为每个请求使用Guid.NewGuid()方法(如上所述)。只需在数据库表中添加一个类型为“uniqueidentifier”的字段并将其保存为请求标识符。 – Restuta 2009-10-19 14:53:08

那么,HttpContext.Current.Timestamp声称做到这一点。但是,当它抓住时间戳时,我不是100%。