kicken/copyleaks-api
Composer 安装命令:
composer require kicken/copyleaks-api
包简介
Copyleaks API
README 文档
README
This is a simple Copyleaks API version 3 implementation.
Install
The easiest way to install this is to use composer.
composer require kicken/copyleaks-api
Usage
First, create a new instance of the CopyleaksAPI class. Then you can use the scans() and downloads() methods to access the api endpoints.
Here are quick examples to help you get going. Read the library source for more details about features and how to use the library.
Submit a document for scanning using a URL.
const API_EMAIL = 'test@example.com';
const API_KEY = 'secret_api_key';
$client = new CopyleaksAPI(API_EMAIL, API_KEY);
//Setup callback URLs
$scanId = mt_rand();
$documentUrl = 'https://example.com/webhook.php?scan=' . $scanId . '&action=download';
$statusUrl = 'https://example.com/webhook.php?scan=' . $scanId . '&action=status&status={STATUS}';
//Submit scan request
$parameters = new SubmitUrlParameters($documentUrl, $scanId, $statusUrl);
$client->scans()->submitURL($parameters);
Export results when complete
const API_EMAIL = 'test@example.com';
const API_KEY = 'secret_api_key';
$json = json_decode(file_get_contents('php://input'));
$data = Completed::createFromJsonObject($json);
$matchMap = [
'internet' => $data->results->internet,
'database' => $data->results->database
];
$exportId = date('Ymd\tHis');
$completeHook = 'https://example.com/webhook.php?' . http_build_query([
'scan' => $scanId,
'action' => 'export',
'what' => 'complete'
]);
$exportParameters = new ExportParameters($scanId, $exportId, $completeHook);
foreach ($matchMap as $type => $matchList){
/** @var ResultItem $resultItem */
foreach ($matchList as $resultItem){
$resultParams = new ResultParameters($resultItem->id, 'https://example.com/webhook.php?' . http_build_query([
'scan' => $scanId,
'action' => 'export',
'what' => 'result',
'id' => $resultItem->id
]));
$exportParameters->addResult($resultParams);
}
}
$client = new CopyleaksAPI(API_EMAIL, API_KEY);
$client->downloads()->export($exportParameters);
Login token caching
Copyleaks recommends caching and re-using the provided authorization token as it is valid for 48-hours. This library, by default, will cache the token in memory. To cache the token elsewhere (such as to persistent storage), you can provide a custom implementation of the AuthorizationCache interface.
Known issues
Not all endpoints and model properties are implemented yet.
统计信息
- 总下载量: 143
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-06-06