kduma/coinhive-api

此包已废弃且不再维护。未建议替代包。

PHP和Laravel 5 CoinHive API和验证码

v1.1.1 2018-01-23 13:08 UTC

This package is auto-updated.

Last update: 2022-12-02 01:34:36 UTC


README

此包因CoinHive停止服务而存档。

PHP和Laravel 5 CoinHive API和验证码

Latest Version on Packagist Software License Total Downloads

PHP和Laravel 5 CoinHive API和验证码

安装

通过Composer

$ composer require kduma/coinhive-api

使用方法

$api = new \KDuma\CoinHive\CoinHiveApi(YOUR_SITE_KEY, YOUR_SECRET_KEY);

$api->getPayoutStats();
$api->getSiteStats();
$api->withdrawFromUser($name, $amount);
$api->getUserBalance($name);
$api->getTopUsers($count = 128);
$api->getUsersList($page = null, $count = 4096);
$api->createLink($url, $hashes = 256);
$api->resetUser($name);
$api->resetAllUsers();
$api->verifyToken($token, $hashes = 256);

Laravel使用

配置

在Laravel 5.5中,服务提供者会自动发现。如果您不使用包发现,请将服务提供者添加到config/app.php文件中的providers数组

KDuma\CoinHive\Laravel\CoinHiveServiceProvider::class,

将以下条目添加到您的.env文件中

COINHIVE_SITE_KEY=<your site key>
COINHIVE_SECRET_KEY=<your secret key>
COINHIVE_DEFAULT_HASHES_COUNT=512

将以下条目添加到您的config\services.php文件中

'coinhive' => [
    'default_hashes' => env('COINHIVE_DEFAULT_HASHES_COUNT', 512),
    'site_key' => env('COINHIVE_SITE_KEY'),
    'secret_key' => env('COINHIVE_SECRET_KEY'),
    'use_authedmine_url' => true,
],

使用方法

您可以通过解析CoinHiveApi::class

use KDuma\CoinHive\CoinHiveApi;

$api = app(CoinHiveApi::class);

$top_users = $api->getTopUsers();

或使用注入容器

use KDuma\CoinHive\CoinHiveApi;

Route::get('/api', function (CoinHiveApi $api) {
    $top_users = $api->getTopUsers();
});

在Laravel中使用CoinHive工作量证明验证码

在您的表单中,使用CoinHiveCaptchaDisplayer类放置验证码字段

{!! resolve(\KDuma\CoinHive\CoinHiveCaptchaDisplayer::class)->display() !!}

您还可以指定更多选项,如required_hashesautostartwhitelabeldisable-elements,例如以下示例

{!! resolve(\KDuma\CoinHive\CoinHiveCaptchaDisplayer::class)->display(256, [
    'data-autostart' => false,
    'data-whitelabel' => false,
    'data-disable-elements' => "#submit",
]) !!}

要检查验证码是否有效,您可以使用ValidateCoinHiveCaptchaToken验证器

Route::post('/post', function (\Illuminate\Http\Request $request) {
    $request->validate([
        'coinhive-captcha-token' => new \KDuma\CoinHive\Laravel\ValidateCoinHiveCaptchaToken()
    ]);
});

如果您需要自定义required_hashes数量,您可以在构造函数中传递它。

致谢

许可

MIT许可证(MIT)。有关更多信息,请参阅许可文件