2017-09-06 133 views
0

我們正在使用AWS Pinpoint webservice爲Android和iOS推送推送通知。我們已經在AWS pinpoint控制檯中創建並啓動了廣告系列。 但我們希望從其他網絡服務器管理細分受衆羣,廣告系列等,以便我們不必反覆登錄AWS控制檯(客戶的要求)。如何使用php代碼管理AWS Pinpoint活動AWS-Sdk

對於這樣的需求,我使用AWS php sdk來實現目標。我寫的只是簡單的代碼

require_once 'aws-sdk/aws-autoloader.php'; 
use Aws\AwsClient; 

$objClient = new Aws\AwsClient([ 
      'version'  => 'XXX', 
      'region'  => 'XXX', 
      'credentials' => [ 
       'key' => 'XXX', 
       'secret' => 'XXX' 
      ] 
     ]); 

但它給以下錯誤:

Fatal error: Uncaught exception 'InvalidArgumentException' with message 'The service "" is not provided by the AWS SDK for PHP.' in /opt/lampp/htdocs/researchworks/vipin/pinpoint-demo/aws-sdk/Aws/functions.php:347 Stack trace: #0 /opt/lampp/htdocs/researchworks/vipin/pinpoint-demo/aws-sdk/Aws/AwsClient.php(129): Aws\manifest('') #1 /opt/lampp/htdocs/researchworks/vipin/pinpoint-demo/index.php(13): Aws\AwsClient->__construct(Array) #2 {main} thrown in /opt/lampp/htdocs/researchworks/vipin/pinpoint-demo/aws-sdk/Aws/functions.php on line 347 

我已經使用了https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.Pinpoint.PinpointClient.html精確documantation。 請提供問題的解決方案。

回答

2

不知道如何實例化一個原始AWS客戶端,但我猜如果你提供"Pinpoint"作爲service參數它可能工作。

documentation provided針尖客戶端可以被實例化,並呼籲

require_once 'aws/aws-autoloader.php'; 

use Aws\Pinpoint\PinpointClient; 

$client = PinpointClient::factory(array(
    'profile'=>'CREDENTIAL_PROFILE', //Or you can provide the raw credentials as you did in your sample 
    'region'=>'us-east-1', 
    'version'=>'2016-12-01' 
)); 
$result = $client->getApps(); 

print $result; 
+0

感謝您的寶貴建議。是的你是對的,我糾正了我的錯誤,並且包括'使用Aws \ Pinpoint';'所以,我能夠實例使用$ objPinpoint =新AWS \精確定位\ PinpointClient對象([ \t \t \t \t '版本'=> 'XXX', \t \t \t \t '區域'=> 'XXX', \t \t \t \t '憑證'=> [ \t \t \t \t \t '鍵'=> 'XXX', \t \t \t \t \t '祕密'=> 'XXX' \t \t \t \t] \t \t \t]); –

+0

但現在我面臨新的問題。實例化對象後,我試圖調用文檔中提供的函數,但它提供了以下錯誤:致命錯誤:Uncaught異常'Aws \ Pinpoint \ Exception \ PinpointException'帶消息'錯誤正在執行「GetApps」on「https://pinpoint.us- east-1.amazonaws.com/v1/apps「; AWS HTTP錯誤:cURL錯誤35:與pinpoint.us-east-1.amazonaws.com:443有關的未知SSL協議錯誤(請參閱http://curl.haxx.se/libcurl/c/libcurl-errors.html) '異常'GuzzleHttp \ Exception \ ConnectException'帶有消息 –

+0

'cURL錯誤35:與pinpoint.us-east-1.amazonaws.com:443有關的未知SSL協議錯誤(請參閱http://curl.haxx.se/libcurl /c/libcurl-errors.html)'in /opt/lampp/htdocs/researchworks/vipin/aws-sdk-new/GuzzleHttp/Handler/CurlFactory.php:186堆棧跟蹤:#0/opt/lampp/htdocs/researchworks /vipin/aws-sdk-new/GuzzleHttp/Handler/CurlFactory.php(150):GuzzleHttp \ Handler \ CurlFactory :: createRejection(Object(GuzzleHttp \ Handler \ EasyHandle),Array)#1/opt/lampp/htdocs/researchworks /vipin/aws-sdk-new/GuzzleHttp/Handler/CurlFactory.php(103): –