我得到一个AWS错误代码:SignatureDoesNotMatch,状态代码:403时,试图通过亚马逊SES发送邮件。
我已经确认我正在使用通过https://console.aws.amazon.com/iam/home?#users创建的正确凭据,错误仍然存在。
我假设我在iam/home上创建的凭据实际上是全局的,但我不知道我进一步做错了什么。整个错误是:
AWS错误代码:SignatureDesNotMatch,状态代码:403,AWS请求ID:xxx,AWS错误类型:客户端,AWS错误消息:签名过期:20140314T031111Z现在早于20140317T15116Z(20140317T15111Z-5分钟),用户代理:AWS-sdk-php2/2.5。3大口/3.8。1/7.22。0 PHP/5.3。10-1ubuntu3。10在/url/Vendor/Aws/Common/Exception/NamespaceExceptionFactory中抛出。php在线91
实际代码是我提取的代码:http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.Ses.SesClient.html#_sendEmail
我从本地环境中启动此脚本。
我在哪里可以找到有效的凭据?
除了这个解决方案,我还做了以下工作。
1) 我已在IAM中创建了具有PowerUser策略的用户。2) 更新了我的代码中的密钥/访问密钥。
现在它起作用了。
不确定SMTP凭据(在SES仪表板下创建)为何不工作。
这看起来像是时钟偏移问题。发送请求的机器的时间与Amazon SES服务器的时间相差太大。这导致您的签名无效。你的证件可能没问题。更正计算机时钟或与NTP服务器同步。
使用Alamofire 4/Swift 3,您如何区分由于以下原因而失败的请求: 网络连接(主机关闭,无法连接到主机)vs 代码: 我们希望以不同的方式处理每个案件。在后一种情况下,我们要询问回答。(在前一种情况下,我们不知道,因为没有回应)。
我是不是漏掉了什么?我应该如何使用这些异步方法来处理这样的错误响应呢?
错误代码 宏定义 #define RT_EOK 0 无错误 #define RT_ERROR 1 一般错误 #define RT_ETIMEOUT 2 超时错误 #define RT_EFULL 3 资源已满 #define RT_EEMPTY 4 资源已空 #define RT_ENOMEM 5 内存不足 #de
代码- 即使db实例存在,它也会为某些调用抛出错误。错误详细信息- 你能告诉我我在这里缺了什么吗? 错误含义-
(spring)SecurityConfig.java LoginController.java
问题内容: 我试图按照此链接中的建议将错误返回到对控制器的调用,以便客户端可以采取适当的措施。javascript通过jqueryAJAX调用控制器。仅在不将状态设置为error的情况下,我才可以重新获得Json对象。这是示例代码 如果没有设置状态码,我会得到Json。如果设置状态代码,则会返回状态代码,但不会返回Json错误对象。 更新 我想将Error对象作为JSON发送,以便可以处理ajax