capy / capy_api_client
Capy PHP HTTP客户端库,使验证capy服务的puzzle/avatar以及评估blacklist/riskbase变得更加容易
1.0.7
2016-08-30 04:29 UTC
Requires
- php: >=5.4
- guzzlehttp/guzzle: ^6.2
Requires (Dev)
- phpunit/phpunit: ^4.1
This package is not auto-updated.
Last update: 2024-09-14 19:25:44 UTC
README
Capy PHP客户端库使验证capy服务的puzzle/avatar以及评估blacklist/riskbase变得更加容易
安装
可以通过Composer在项目中的composer.json中要求capy/capy_api_client包来安装Capy PHP库客户端提供者。
"require": { "capy/capy_api_client": "~1.0" },
或
使用Composer要求此包
composer require capy/capy_api_client
用法
I. 拼图验证
步骤 1:创建新实例
$puzzleClient = new PuzzleClient($privateKey, $timeout);
参数:
- $privateKey:API密钥用于验证网站所有权。可以从显示私有密钥获取
- $timeOut:请求服务器CAPY的超时时间(秒)
步骤 2:实现验证
- $result = $puzzleClient.verify($capy_challengekey, $capy_answer);
参数:
- $capy_chanllengekey = $_POST['capy_challengekey'];?>
- $capy_answer = $_POST['capy_answer'];?>
步骤 3:处理数据结果
switch ($result) { case PuzzleConst::Success: rint "1"; break; case PuzzleConst::IncorrectAnswer: print "2"; break; case PuzzleConst::InvalidRequestMethod: print "3"; break; case PuzzleConst::InvalidPostParameters: print "4"; break; case PuzzleConst::InvalidPrivateKey: print "5"; break; case PuzzleConst::InvalidChallengeKey: print "6"; break; case PuzzleConst::InvalidCaptchaKey: print "7"; break; case PuzzleConst::InvalidOnetimeCaptcha: print "8"; break; case PuzzleConst::IsNotActive: print "9"; break; case PuzzleConst::UnknownError: print "2"; break; case PuzzleConst::Timeout: print "2"; break; }
II. 头像验证
步骤 1:创建新实例
$avatarClient = new AvatarClient($privateKey, $timeout);
参数:
- $privateKey:API密钥用于验证网站所有权。可以从显示私有密钥获取
- $timeOut:请求服务器CAPY的超时时间(秒)
步骤 2:实现验证
- $result = $avatarClient.verify($capy_challengekey, $capy_answer);
参数:
- $capy_chanllengekey = $_POST['capy_challengekey'];?>
- $capy_answer = $_POST['capy_answer'];?>
步骤 3:处理数据结果
switch ($result){ case AvatarConst::Success; print "1"; break; case AvatarConst::IncorrectAnswer; print "2"; break; case AvatarConst::InvalidRequestMethod; print "3"; break; case AvatarConst::InvalidPostParameters; print "4"; break; case AvatarConst::InvalidChallengeKey; print "5"; break; case AvatarConst::IsNotActive; print "6"; break; case AvatarConst::UnknownError; print "7"; break; case AvatarConst::Timeout; print "8"; break; }
III. 黑名单评估
步骤 1:创建新实例
$blacklistClient = new BlacklistClient($apiKey, $timeout, $blacklist_key);
参数:
步骤 2:实现验证
- $result = $blacklistClient.evaluate($ip_address);
参数:
- $ip_address = $_POST['ip_address'];?>
结果值
- ["result"=>BlacklistConst::TooManySuccesses, "value"=>0.1]
步骤 3:处理数据结果
switch ($result["result"]) { case BlacklistConst::TooManySuccesses: print "1"; break; case BlacklistConst::TooMayFailures: print "2"; break; case BlacklistConst::NotFound: print "3"; break; case BlacklistConst::FoundButExpired: print "4"; break; case BlacklistConst::InWhiteList: print "5"; break; case BlacklistConst::InvalidParameters: print "6"; break; case BlacklistConst::InvalidIpAddress: print "7"; break; case BlacklistConst::InvalidPrivateKey: print "8"; break; case BlacklistConst::InvalidBlacklistKey: print "9"; break; case BlacklistConst::CalculationError: print "10"; break; case BlacklistConst::TimeOut: print "11"; break; case BlacklistConst::Others: print "12"; break; case BlacklistConst::UnknownError: print "13"; break; }
IV. 风险库评估
步骤 1:创建新实例
$riskbaseClient = new RiskbaseClient($apiKey, $timeout, $riskbase_key);
参数:
步骤 2:实现验证
- $result = $riskbaseClient.evaluate($capy_data);
参数:
- $capy_data = $_POST['capy_data'];?>
结果值
- ["result"=>RiskbaseConst::Success, "value"=>0.7, "reasons"=>[RiskbaseConst::DifferentISP, RiskbaseConst::DifferentCountry]]
步骤 3:处理数据结果
switch ($result["result"]) { case RiskbaseConst::Success; print "1"; break; case RiskbaseConst::InvalidParameters; print "2"; break; case RiskbaseConst::IncorrectParameters; print "3"; break; case RiskbaseConst::InvalidPrivateKey; print "4"; break; case RiskbaseConst::InvalidUsername; print "5"; break; case RiskbaseConst::EvaluationError; print "6"; break; case RiskbaseConst::DataBaseError; print "7"; break; case RiskbaseConst::NotInDataBase; print "8"; break; case RiskbaseConst::BadRequest; print "9"; break; case RiskbaseConst::TimeOut; print "10"; break; case RiskbaseConst::UnknownError; print "11"; break; }