PHP服务端SDK集成

更新时间:

IClientProfile是与阿里云验证码服务端API交互的接口,所有SDK的操作都需要通过IClientProfile完成。

前提条件

  • 已为您的阿里云账号创建AccessKey。

  • 已从阿里云验证码控制台下载PHP服务端SDK包。

  • 服务端开发环境为PHP 5.3或以上版本。

安装SDK

  1. 将下载的php_sdk.zip压缩包解压至服务端任意目录,需要确保具有读取权限。

  2. 在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可以复用,建议将其设置成应用程序全局唯一。

<?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");
                        

调用阿里云验证码服务端API

初始化IClientProfile完成后,即可调用阿里云验证码服务端提供的API,根据业务需要开发前端页面请求的处理类和对运行结果的处理方式。

关于阿里云验证码服务API的具体说明,请参见阿里云验证码Web/HTML5应用类型服务API

$request = new Afs\AuthenticateSigRequest();
$request->setSessionId("xxx");// 会话ID。必填参数,从前端获取,不可更改。
$request->setToken("xxx");// 请求唯一表示。必填参数,从前端获取,不可更改。
$request->setSig("xxx");// 签名串。必填参数,从前端获取,不可更改。
$request->setScene("xxx");// 场景标识。必填参数,从前端获取,不可更改。
$request->setAppKey("xxx");// 应用类型标识。必填参数,后端填写。
$request->setRemoteIp("xxx");// 客户端IP。必填参数,后端填写。
$response = $client->getAcsResponse($request);// 返回code 100表示验签通过,900表示验签失败
print_r($response);