如何限制客户端仅传递UTC时区日期?我希望客户端只能以这种格式传递日期:yyyyMMddTHH:mm:ss.SSSZ例如20130710T00:41:19.004 + 0000。
如果客户通过日期偏移,如20130710T00:41:19.004 + 0500,我不应接受此日期。
这是我们的要求: 客户端将调用我们的webservice方法,客户端将始终将日期转换为UTC时区,即20130710T00:41:19.004 + 0000并传递给我们的webservice方法。但无论如何,如果任何案件客户已经过了20130710T00:41:19.004 + 0500这样的日期,我们应该有我们的逻辑,我们不应该处理请求。
我尝试了SimpleDateFormat(yyyyMMddTHH:mm:ss.SSSZ)并尝试解析Date(20130710T00:41:19.004 + 0500),它没有抛出任何异常。我期待它不应该解析日期。
检查输入日期是否有上述格式(仅限UTC)?
答案 0 :(得分:1)
如果您希望输入字符串使用此格式(yyyyMMddTHH:mm:ss.SSSZ
),假设SimpleDateFormat
格式化且仅允许UTC时区中的输入,只需检查字符串是否以00
结尾,在将它传递给解析器之前,+0000
或-0000
。