Lit*_*ate 6 rest clojure instant datomic
一个clojure新手问题.我试图弄清楚将客户端(用任何语言编写)的日期传递给用clojure编写的服务器的最佳方法,该服务器依赖于Datomic数据库.为了避免语言特定类的任何问题,我计划将日期作为RFC3339格式的字符串传递.但是,我在Clojure中解析字符串时遇到了问题.我的,显然是错误的假设是我可以这样做:
(clojure.instant/parse-timestamp "2014")
Run Code Online (Sandbox Code Playgroud)
从而得到一个瞬间.但是,此调用会导致
clojure.lang.ArityException: Wrong number of args (1) passed to: instant$fn--6183$fn …
Run Code Online (Sandbox Code Playgroud)
这让我很困惑,因为据我所知,这个函数只需要一个参数(格式化的字符串).
我错过了什么?
Mic*_*zyk 12
parse-timestamp
是两个参数的函数.时间戳的字符串表示形式是第二个.第一个用于传递一个函数,该函数接受一堆参数并构造一个表示瞬间的对象.该new-instant
函数的参数在文档字符串中描述parse-timestamp
- 请参阅参见(doc clojure.instant/parse-timestamp)
详细信息.
通常你不需要parse-timestamp
直接调用,因为clojure.instant
导出了一堆用于读取时间戳的函数:
(clojure.instant/read-instant-date "2014-04-23T10:13Z")
;= #inst "2014-04-23T10:13:00.000-00:00"
Run Code Online (Sandbox Code Playgroud)
read-instant-calendar
并且read-instant-timestamp
是这种类型的另外两个功能.他们都是使用parse-timestamp
并且有文档字符串记录他们的合同.
归档时间: |
|
查看次数: |
1837 次 |
最近记录: |