将两个Unix时间戳编码为一个
Encoding two Unix timestamps into one
我的应用程序需要GET参数中的日期范围。我在想,一定有某种天才的方法可以将两个Unix时间戳编码为一个,从而有效地缩短URL参数。
我意识到两个时间戳的简单CSV就可以了,但这里的目标是尽可能减少URL大小。
PS:如果只有一个日期(开始日期(,也需要这样做,在这种情况下,结束日期将假设为今天。
好吧,这里有一些想法:
-
如果这两个时间戳可能彼此接近,请将它们存储为第一个时间和差值的一对。例如,对于现在和明天,您将存储
1361666257,86400
。 -
以十六进制(以16为基数(而不是以10为基数存储时间戳;例如
512960d1
-
如果时间戳始终是日期,则通过除以86400并丢弃余数,将时间戳存储为自历元以来的天数,而不是秒。例如,今天是15760天。
和/或将这三者组合:3d90,1
如果您的目标是尽可能减少URL大小,那么您可以想出自己的"时间戳"格式,根据自己的方便选择粒度和偏移量。
例如,如果需要传递的日期通常在请求的当前日期前后,并且只需要日期而不需要时间,则可以使用前天的数量,而不是自1970年以来秒的数量 以下是unix时间戳和以下变体的随机日期范围: 请注意,我使用 这只是一个例子。您应该根据应用程序的需要(或不需要(制定自己的编码。例如,如果日期范围通常很小,您可以将其编码为日期+差异。差异可能在几天、几个月或几年内。。。根据您的需要。Date range: 2012-09-21 to 2013-01-10
Timestamp: 1348178400_1357772400
Days-ago: 156_45
_
将从和到部分分隔开,因为在使用UNIX时间戳时,1970年之前的日期或在我的示例编码中的未来日期需要减号-
。
- 如何在javascript转换编码中将一个动态值从一个表单添加到另一个页面
- 一个javascript实现base64图像编码并将结果写入文本文件
- JSON编码一个HTML列表——所有子项都显示在所有父项上
- HackReactor,编码窗口现在可以访问一个名为“”的对象;招生;使用名为“;showApp”;.调用此方法时不带任
- 读取一个本地文件,编码为base64,我想给用户一个将结果保存到文件的选项
- 是否可以将PHP的一个简单片段重新编码为javascript
- 我在jQuery中有一个循序渐进的过程,有没有更好的编码方法
- 在一个模式AjAX编码器中显示不同的Gallery
- 有没有什么干净的方法可以对一组||测试进行编码,看看变量的值是否在其中一个测试中
- 当点击一个标记时,地理编码器返回先前存储的值
- JSON编码一个包含#和其他特殊字符的字符串
- 编码手册,Stripe提出了一个错误:该客户没有附加的付款来源
- 如何编码,以便在文本区域中只能使用一个字母
- 一个简单的刽子手游戏的逻辑,以显示编码的单词
- 将 Base64 编码的图像加密为另一个有效的 Base64 编码图像
- 我需要根据当前年份动态更新日期.目前在 html 中硬编码.需要更新一个单词
- Javascript解码JSON字符串,其中包含一个编码字符串
- 浏览器如何在一个编码标记中呈现这个内联JavaScript
- 如何在Sencha Touch 2中定义一个编码base64图像作为背景
- 我需要解码一个编码的js