当调用接口时,Timestamp 传参是按照 API 文档上写的如:Timestamp=2015-03-09T12:03:11Z,且编码是 UTF-8,为何总是出现如下返回错误:
{"RequestId":"EDC596CF-567E-474A-B095-A288DBA03DF1","HostId":"dns.aliyuncs.com","Code":"IllegalTimestamp","Message":"The input parameter \"Timestamp\" that is mandatory for processing this request is not supplied."}
文档中已经有详细的说明,见最后的调用示例:
TimeStamp 参数要求符合 ISO8601 规范,并注意使用 UTC 时间,即时区设置为 0,否则会遇到错误。下面的示例代码演示了如何生成符合规范的 TimeStamp 字符串:
private static final String ISO8601_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'";
private static String formatIso8601Date(Date date) { SimpleDateFormat df = new SimpleDateFormat(ISO8601_DATE_FORMAT); df.setTimeZone(new SimpleTimeZone(0, "GMT")); return df.format(date); } |
如问题还未解决,请联系售后技术支持。
文档内容是否对您有帮助?