错误内容如下:
[Error Code]:RequestTimeTooSkewed, [Message]:The difference between the request time and the current time is too large.
at com.aliyun.openservices.oss.internal.OSSExceptionFactory.create(OSSExceptionFactory.java:14)
at com.aliyun.openservices.oss.internal.OSSErrorResponseHandler.handle(OSSErrorResponseHandler.java:39)
at com.aliyun.common.comm.ServiceClient.handleResponse(ServiceClient.java:281)
at com.aliyun.common.comm.ServiceClient.sendRequestImpl(ServiceClient.java:177)
at com.aliyun.common.comm.ServiceClient.sendRequest(ServiceClient.java:138)
at com.aliyun.openservices.oss.internal.OSSOperation.send(OSSOperation.java:59)
at com.aliyun.openservices.oss.internal.OSSBucketOperation.listObjects(OSSBucketOperation.java:236)
at com.aliyun.openservices.oss.OSSClient.listObjects(OSSClient.java:272)
at com.cmspad.app.b.a(Unknown Source)
at com.cmspad.app.b.run(Unknown Source)
at com.cmspad.app.Launcher.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.exe4j.runtime.WinLauncher.main(Unknown Source)
经过分析发现是部分设备电脑时间设置错误导致的。
这个问题我觉得挺符合国情的,有的客户仍在使用旧有的设备,而有好多设备主板的电池电量已经耗尽,每次重启都会重置时间。
这个时候如果再判断本地时间的话,容易出现这个错误。
希望技术部门能解决一下这个问题,毕竟旧有设备还是有很多的。
-------------------------
补充一点:只有在请求中带签名认证头(Authentication)时,才会验证服务器时间和请求机器时间。匿名访问不会做验证。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。