【发布时间】:2019-04-30 11:39:51
【问题描述】:
每当我通过部署在托管服务器 (hostgator) 上的 PHP 脚本连接到 Amazon Rekognition Service 时,我都会收到以下错误
AWS HTTP 错误:客户端错误:POST https://rekognition.us-east-2.amazonaws.com 导致 400 错误请求响应: {"__type":"InvalidSignatureException","message":"签名过期:20190430T075732Z 现在早于 20190430T105409 (截断...) InvalidSignatureexception(客户端):签名已过期:20190430T075732Z现在早于20190430T105409Z(20190430T105909Z(20190430T105909Z - 5分钟) - {“__Type”:“InvalidSignatureexception”,“消息”:“签名已过期:20190430T075732Z现在早于20190430T105409Z(20190430T105909Z - 5分钟.)"}'
我正在使用以下 PHP 脚本。
require 'aws/aws-autoloader.php';
use Aws\Rekognition\RekognitionClient;
//Credentials for access AWS Service code parameter
$credentials = new Aws\Credentials\Credentials('xxxx', 'yyyyy');
//Get Rekognition Access
$rekognitionClient = RekognitionClient::factory(array(
'region' => "us-east-2",
'version' => 'latest',
'correctClockSkew' => true,
'credentials' => $credentials
));
我尝试按照其他解决方案的建议添加“'correctClockSkew' => true”,但似乎对我不起作用。
我不确定这是否是解决这个问题的正确方法。
请帮忙
【问题讨论】:
-
我也有同样的问题。我使用 AWS PHP SDK 2.7.27 版,无法更改服务器上的时间。所以得到同样的错误并试图找到一种方法来修复 PHP 所以它支持我的服务器和 AWS 之间的时差......你最后找到解决方案了吗?
标签: php amazon amazon-rekognition