PHP服務端SDK集成
更新時間:
本文介紹如何在PHP服務端集成SDK代碼。
前提條件
已為您的阿里云賬號創建AccessKey。詳細操作指導請參見創建AccessKey。
已從阿里云驗證碼控制臺下載PHP服務端SDK包。
服務端開發環境為PHP 5.3或以上版本。
安裝SDK
將下載的php_sdk.zip壓縮包解壓至服務端任意目錄,需要確保具有讀取權限。
在PHP文件中添加頭文件并指定正確的文件路徑,導入使用別名。例如:
<?php include_once './aliyun-php-sdk-core/Config.php'; use afs\Request\V20180112 as Afs; //Do something below...
注意事項
與阿里云驗證碼服務端SDK相關的類都在com.aliyuncs.IAcsClient包中。
SDK調用接口的默認連接超時時間是3秒,讀取超時時間是80秒。您可以調用帶有connectTimeout和readTimeout的構造方法來自定義設置SDK調用接口的連接超時時間和讀取超時時間。
初始化IClientProfile
IClientProfile是與阿里云驗證碼服務端交互的接口,所有SDK的操作都需要通過IClientProfile完成。
說明
IClientProfile可以復用,建議將其設置成應用程序全局唯一。
<?php
include_once './aliyun-php-sdk-core/Config.php';
use afs\Request\V20180112 as Afs;
//YOUR ACCESS_KEY、YOUR ACCESS_SECRET請替換成您的阿里云accesskey id和secret
$iClientProfile = DefaultProfile::getProfile("cn-hangzhou", "YOUR ACCESSKEY", "YOUR ACCESS_SECRET");
$client = new DefaultAcsClient($iClientProfile);
DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", "afs", "afs.aliyuncs.com");
調用阿里云驗證碼服務端接口
IClientProfile完成后,即可調用AnalyzeNvcRequest接口,根據業務需要開發前端頁面請求的處理類和對運行結果的處理方式。
<?php
$request = new Afs\AnalyzeNvcRequest();
$request->setData("xxx");//必填參數,由前端獲取getNVCVal方法獲得的值。
// 通過setScoreJsonStr方法聲明"服務端調用阿里云驗證碼接口得到的返回結果"與"前端執行操作"間的映射關系,并通知驗證碼服務端進行二次驗證授權。
// 注意:前端頁面必須嚴格按照該映射關系執行相應操作,否則將導致調用異常。
// 例如,在setScoreJsonStr方法中聲明"400":"NC",則當服務端返回400時,您的前端必須喚醒滑動驗證(NC),如果喚醒其他驗證,則將導致失敗。
$request->setScoreJsonStr("{\"200\":\"PASS\",\"400\":\"NC\",\"800\":\"BLOCK\"}");//根據業務需求設置各返回結果對應的客戶端處置方式。
$response = $client->getAcsResponse($request);
print_r($response);
?>
文檔內容是否對您有幫助?