찾다
백엔드 개발PHP 튜토리얼Bitcoin Coinbase 지갑 라이브러리를 사용하여 PHP를 사용하여 애플리케이션을 개발하는 방법(자세한 단계)

이 기사의 내용은 Bitcoin Coinbase 지갑 라이브러리를 사용하여 PHP로 애플리케이션을 개발하는 방법에 대한 것입니다. 이는 특정 참조 가치가 있으므로 도움이 될 수 있습니다.

Coinbase Wallet API v2의 공식 클라이언트 라이브러리입니다. 우리는 Coinbase Wallet을 PHP 프로젝트에 통합할 수 있는 직관적이고 안정적인 인터페이스를 제공합니다.

중요: 이 라이브러리는 최신 API v2를 대상으로 하기 때문에 v2 권한(예: wallet:accounts:read)이 필요합니다. 아직 v1을 사용하고 계시다면 이 라이브러리의 이전 버전을 사용하시기 바랍니다. wallet:accounts:read)。如果你仍在使用v1,请使用此库的旧版本。

安装

使用Composer安装库。如果你不熟悉Composer或依赖管理器,请阅读Composer文档。

"require": {
    "coinbase/coinbase": "~2.0"
}

认证

API密钥

使用API密钥和密钥访问你自己的Coinbase帐户。

use Coinbase\Wallet\Client;
use Coinbase\Wallet\Configuration;

$configuration = Configuration::apiKey($apiKey, $apiSecret);
$client = Client::create($configuration);

OAuth2

使用OAuth2身份验证访问你自己以外的用户帐户。此库不处理握手过程,并假定你在初始化时具有访问token。你可以使用OAuth2客户端(例如league/oauth2-client)处理握手过程。

use Coinbase\Wallet\Client;
use Coinbase\Wallet\Configuration;

// with a refresh token
$configuration = Configuration::oauth($accessToken, $refreshToken);

// without a refresh token
$configuration = Configuration::oauth($accessToken);

$client = Client::create($configuration);

双因素身份验证

发送资金端点在某些情况下需要2FA令牌(在此处阅读更多内容)。如果需要,则抛出特定异常。

use Coinbase\Wallet\Enum\Param;
use Coinbase\Wallet\Exception\TwoFactorRequiredException;
use Coinbase\Wallet\Resource\Transaction;

$transaction = Transaction::send([
    'toEmail' => 'test@test.com',
    'bitcoinAmount' => 1
]);

$account = $client->getPrimaryAccount();
try {
    $client->createAccountTransaction($account, $transaction);
} catch (TwoFactorRequiredException $e) {
    // show 2FA dialog to user and collect 2FA token

    // retry call with token
    $client->createAccountTransaction($account, $transaction, [
        Param::TWO_FACTOR_TOKEN => '123456',
    ]);
}

分页

几个端点是分页的。默认情况下,库只会获取给定请求的第一页数据。你可以轻松加载不仅仅是第一页结果。

$transactions = $client->getAccountTransactions($account);
while ($transactions->hasNextPage()) {
    $client->loadNextTransactions($transactions);
}

你还可以使用fetch_all参数让库发出加载完整集合的所有必要请求。

use Coinbase\Wallet\Enum\Param;

$transactions = $client->getAccountTransactions($account, [
    Param::FETCH_ALL => true,
]);

 警告

注意警告是明智的。如果配置了一个标准PSR-3记录器,库将记录所有警告。

use Coinbase\Wallet\Client;
use Coinbase\Wallet\Configuration;

$configuration = Configuration::apiKey($apiKey, $apiSecret);
$configuration->setLogger($logger);
$client = Client::create($configuration);

资源引用

在某些情况下,API将返回资源引用来代替扩展的资源对象。可以通过刷新来扩展这些引用。

$deposit = $this->client->getAccountDeposit($account, $depositId);
$transaction = $deposit->getTransaction();
if (!$transaction->isExpanded()) {
    $this->client->refreshTransaction($transaction);
}

你还可以使用expand参数请求API在初始请求中返回扩展资源。

use Coinbase\Wallet\Enum\Param;

$deposit = $this->client->getAccountDeposit($account, $depositId, [
    Param::EXPAND = ['transaction'],
]);

创建新资源时可以使用资源引用,从而避免从API请求资源的开销。

use Coinbase\Wallet\Resource\Deposit;
use Coinbase\Wallet\Resource\PaymentMethod;

$deposit = new Deposit([
    'paymentMethod' => PaymentMethod::reference($paymentMethodId)
]);

// or use the convenience method
$deposit = new Deposit([
    'paymentMethodId' => $paymentMethodId
]);

响应

有多种方法可以访问原始响应数据。首先,每个资源对象都有一个getRawData()方法,你可以使用该方法访问未映射到对象属性的任何字段。

$data = $deposit->getRawData();

来自最后一个HTTP响应的原始数据也可在客户端对象上使用。

$data = $client->decodeLastResponse();

活动记录方法

该库包括对资源对象上的活动记录方法的支持。你必须在引导应用程序时启用此功能。

$client->enableActiveRecord();

启用后,你可以在资源对象上调用活动记录方法。

use Coinbase\Wallet\Enum\Param;

$transactions = $account->getTransactions([
    Param::FETCH_ALL => true,
]);

用法

这并不是为了提供API的完整文档。有关更多详细信息,请参阅官方文档。

市场数据

列出支持的本地货币

$currencies = $client->getCurrencies();

列出汇率

$rates = $client->getExchangeRates();

买入价

$buyPrice = $client->getBuyPrice('BTC-USD');

卖出价

$sellPrice = $client->getSellPrice('BTC-USD');

现货价格

$spotPrice = $client->getSpotPrice('BTC-USD');

当前服务器时间

$time = $client->getTime();

用户

获取授权信息

$auth = $client->getCurrentAuthorization();

查找用户信息

$auth = $client->getCurrentAuthorization();

获取当前用户

$user = $client->getCurrentUser();

更新当前用户

$user->setName('New Name');
$client->updateCurrentUser($user);

帐号

列出所有帐户

$accounts = $client->getAccounts();

列出帐户详细信息

$account = $client->getAccount($accountId);

列出主要帐户详细信息

$account = $client->getPrimaryAccount();

将帐户设为主要帐户

$client->setPrimaryAccount($account);

创建一个新的比特币账户

use Coinbase\Wallet\Resource\Account;

$account = new Account([
    'name' => 'New Account'
]);
$client->createAccount($account);

更新帐户

$account->setName('New Account Name');
$client->updateAccount($account):

删除帐户

$client->deleteAccount($account);

地址

列出帐户的接收地址

$addresses = $client->getAccountAddresses($account);

获取接收地址信息

$address = $client->getAccountAddress($account, $addressId);

列出地址的交易

$transactions = $client->getAddressTransactions($address);

创建一个新的接收地址

use Coinbase\Wallet\Resource\Address;

$address = new Address([
    'name' => 'New Address'
]);
$client->createAccountAddress($account, $address);

交易

列出交易清单

$transactions = $client->getAccountTransactions($account);

获取交易信息

$transaction = $client->getAccountTransaction($account, $transactionId);

发送资金

use Coinbase\Wallet\Enum\CurrencyCode;
use Coinbase\Wallet\Resource\Transaction;
use Coinbase\Wallet\Value\Money;

$transaction = Transaction::send([
    'toBitcoinAddress' => 'ADDRESS',
    'amount'           => new Money(5, CurrencyCode::USD),
    'description'      => 'Your first bitcoin!',
    'fee'              => '0.0001' // only required for transactions under BTC0.0001
]);

try { $client->createAccountTransaction($account, $transaction); }
catch(Exception $e) {
     echo $e->getMessage(); 
}

将资金转入新帐户

use Coinbase\Wallet\Resource\Transaction;
use Coinbase\Wallet\Resource\Account;

$fromAccount = Account::reference($accountId);

$toAccount = new Account([
    'name' => 'New Account'
]);
$client->createAccount($toAccount);

$transaction = Transaction::transfer([
    'to'            => $toAccount,
    'bitcoinAmount' => 1,
    'description'   => 'Your first bitcoin!'
]);

$client->createAccountTransaction($fromAccount, $transaction);

申请资金

use Coinbase\Wallet\Enum\CurrencyCode;
use Coinbase\Wallet\Resource\Transaction;
use Coinbase\Wallet\Value\Money;

$transaction = Transaction::request([
    'amount'      => new Money(8, CurrencyCode::USD),
    'description' => 'Burrito'
]);

$client->createAccountTransaction($transaction);

重新发送请求

$account->resendTransaction($transaction);

取消请求

$account->cancelTransaction($transaction);

完成请求

$account->completeTransaction($transaction);

买入

列出购买清单

$buys = $client->getAccountBuys($account);

获取购买信息

$buy = $client->getAccountBuy($account, $buyId);

买入比特币

use Coinbase\Wallet\Resource\Buy;

$buy = new Buy([
    'bitcoinAmount' => 1
]);

$client->createAccountBuy($account, $buy);

购买确认

如果在创建购买时传递commit=false,则只需执行此操作。

use Coinbase\Wallet\Enum\Param;

$client->createAccountBuy($account, $buy, [Param::COMMIT => false]);
$client->commitBuy($buy);

卖出

出售清单

$sells = $client->getAccountSells($account);

获取销售信息

$sell = $client->getAccountSell($account, $sellId);

卖比特币

use Coinbase\Wallet\Resource\Sell;

$sell = new Sell([
    'bitcoinAmount' => 1
]);

$client->createAccountSell($account, $sell);

出售确认

如果在创建sell时传递commit=false,则只需执行此操作。

use Coinbase\Wallet\Enum\Param;

$client->createAccountSell($account, $sell, [Param::COMMIT => false]);
$client->commitSell($sell);

存款

列出存款清单

$deposits = $client->getAccountDeposits($account);

获取存款信息

$deposit = $client->getAccountDeposit($account, $depositId);

存款

use Coinbase\Wallet\Enum\CurrencyCode;
use Coinbase\Wallet\Resource\Deposit;
use Coinbase\Wallet\Value\Money;

$deposit = new Deposit([
    'amount' => new Money(10, CurrencyCode::USD)
]);

$client->createAccountDeposit($account, $deposit);

提交押金

如果在创建存款时传递commit=false,则只需执行此操作。

use Coinbase\Wallet\Enum\Param;

$client->createAccountDeposit($account, $deposit, [Param::COMMIT => false]);
$client->commitDeposit($deposit);

取款

列出提款单

$withdrawals = $client->getAccountWithdrawals($account);

取消

$withdrawal = $client->getAccountWithdrawal($account, $withdrawalId);

提款

use Coinbase\Wallet\Enum\CurrencyCode;
use Coinbase\Wallet\Resource\Withdrawal;
use Coinbase\Wallet\Value\Money;

$withdrawal = new Withdrawal([
    'amount' => new Money(10, CurrencyCode::USD)
]);

$client->createAccountWithdrawal($account, $withdrawal);

提交退出

如果在调用提款方法时传递commit=true

설치

Composer를 사용하여 라이브러리를 설치하세요. Composer 또는 종속성 관리자에 익숙하지 않은 경우 Composer 설명서를 읽어보세요.

use Coinbase\Wallet\Enum\Param;

$client->createAccountWithdrawal($account, $withdrawal, [Param::COMMIT => false]);
$client->commitWithdrawal($withdrawal);

인증

API 키

API 키와 비밀을 사용하여 자신의 Coinbase 계정에 액세스하세요.

$paymentMethods = $client->getPaymentMethods();
OAuth2

OAuth2 인증을 사용하여 자신이 아닌 다른 사용자 계정에 액세스하세요. 이 라이브러리는 핸드셰이크 프로세스를 처리하지 않으며 초기화 시 액세스 토큰이 있다고 가정합니다. OAuth2 클라이언트(예: League/oauth2-client)를 사용하여 핸드셰이크 프로세스를 처리할 수 있습니다.

$paymentMethod = $client->getPaymentMethod($paymentMethodId);
2단계 인증

Send Funds 엔드포인트에는 경우에 따라 2FA 토큰이 필요합니다(자세한 내용은 여기에서 확인하세요). 필요한 경우 특정 예외를 발생시킵니다.

$merchant = $client->getMerchant($merchantId);
Pagination

여러 엔드포인트에 페이지가 매겨져 있습니다. 기본적으로 라이브러리는 특정 요청에 대한 데이터의 첫 번째 페이지만 가져옵니다. 결과의 첫 번째 페이지 이상을 쉽게 로드할 수 있습니다.

$orders = $client->getOrders();
fetch_all 매개변수를 사용하여 라이브러리가 전체 컬렉션을 로드하는 데 필요한 모든 요청을 하도록 할 수도 있습니다.

$order = $client->getOrder($orderId);
 경고

경고에 귀를 기울이는 것이 현명합니다. 표준 PSR-3 로거가 구성된 경우 라이브러리는 모든 경고를 기록합니다.

use Coinbase\Wallet\Resource\Order;
use Coinbase\Wallet\Value\Money;

$order = new Order([
    'name' => 'Order #1234',
    'amount' => Money::btc(1)
]);

$client->createOrder($order);
Resource Reference

어떤 경우에는 API가 확장 리소스 개체 대신 리소스 참조를 반환합니다. 이러한 참조는 새로 고쳐서 확장할 수 있습니다.

use Coinbase\Wallet\Enum\CurrencyCode;

$client->refundOrder($order, CurrencyCode::BTC);
expand 매개변수 요청 API를 사용하여 초기 요청에서 확장된 리소스를 반환할 수도 있습니다.

$checkouts = $client->getCheckouts();
새 리소스를 생성할 때 리소스 참조를 사용하면 API에서 리소스를 요청하는 오버헤드를 피할 수 있습니다.

use Coinbase\Wallet\Resource\Checkout;

$params = array(
    'name'               => 'My Order',
    'amount'             => new Money(100, 'USD'),
    'metadata'           => array( 'order_id' => $custom_order_id )
);

$checkout = new Checkout($params);
$client->createCheckout($checkout);
$code = $checkout->getEmbedCode();
$redirect_url = "https://www.coinbase.com/checkouts/$code";
Response🎜🎜원시 응답 데이터에 액세스하는 방법에는 여러 가지가 있습니다. 첫째, 모든 리소스 개체에는 개체 속성에 매핑되지 않은 모든 필드에 액세스하는 데 사용할 수 있는 getRawData() 메서드가 있습니다. 🎜
$checkout = $client->getCheckout($checkoutId);
🎜마지막 HTTP 응답의 원시 데이터도 클라이언트 개체에서 사용할 수 있습니다. 🎜
$orders = $client->getCheckoutOrders($checkout);
🎜활동 기록 방법🎜🎜이 라이브러리에는 리소스 개체에 대한 활동 기록 방법에 대한 지원이 포함되어 있습니다. 애플리케이션을 부팅할 때 이 기능을 활성화해야 합니다. 🎜
$order = $client->createNewCheckoutOrder($checkout);
🎜활성화되면 리소스 개체에 대한 활성 녹음 메서드를 호출할 수 있습니다. 🎜
$raw_body = file_get_contents('php://input');
$signature = $_SERVER['HTTP_CB_SIGNATURE'];
$authenticity = $client->verifyCallback($raw_body, $signature); // boolean

사용법

🎜API에 대한 완전한 문서를 제공하기 위한 것이 아닙니다. 자세한 내용은 공식 문서를 참조하세요. 🎜🎜시장 데이터🎜🎜지원되는 현지 통화 목록🎜
phpunit
🎜환율 목록🎜
phpunit --group integration
🎜구매 가격🎜rrreee🎜판매 가격🎜rrreee🎜현물 가격🎜rrreee🎜현재 서버 시간🎜rrreee🎜User🎜🎜인증 정보 가져오기 🎜rrreee🎜찾기 사용자 정보🎜rrreee🎜현재 사용자 가져오기🎜rrreee🎜현재 사용자 업데이트🎜rrreee🎜계정 🎜🎜모든 계정 나열 🎜rrreee🎜계정 세부정보 나열 🎜rrreee🎜기본 계정 세부정보 나열🎜rrreee🎜계정 변경 기본 계정으로 설정 🎜rrreee🎜만들기 새 비트코인 ​​계정🎜rrreee🎜계정 업데이트🎜rrreee🎜계정 삭제🎜rrreee🎜Address🎜🎜계정의 수신 주소 나열🎜rrreee🎜수신 주소 정보 가져오기🎜rrreee🎜주소 나열 거래 🎜rrreee 🎜 새 수신 주소 만들기 🎜 rrreee 🎜 거래 🎜🎜 거래 나열 🎜rrreee 🎜 거래 정보 가져오기 🎜rrreee 🎜 자금 보내기 🎜rrreee 🎜 새 계정으로 자금 이체 🎜rrreee 🎜 자금 신청 🎜rrreee 🎜 요청 재전송 🎜rrreee🎜요청 취소🎜rr reee🎜요청 완료🎜rrreee🎜 Buy🎜🎜구매 목록🎜rrreee🎜구매 정보 가져오기🎜rrreee🎜비트코인 구매🎜rrreee🎜구매 확인🎜🎜구매 생성 commit=false 시 통과한 경우 이 작업만 수행하면 됩니다. 🎜rrreee🎜Sell🎜🎜Sell List🎜rrreee🎜판매 정보 가져오기🎜rrreee🎜Sell Bitcoin🎜rrreee🎜SellConfirmation🎜🎜판매 생성 시 commit=false를 전달하면 이 작업을 수행하면 됩니다. 🎜rrreee🎜Deposits🎜🎜입금 목록🎜rrreee🎜입금 정보 확인 🎜rrreee🎜Deposits🎜rrreee🎜Submitamino🎜🎜입금 생성 시 commit=false를 통과한 경우에만 이 작업을 수행하면 됩니다. 🎜rrreee🎜Withdraw🎜🎜출금 주문 나열🎜rrreee🎜Cancel🎜rrreee🎜Withdraw🎜rrreee🎜Submit to exit🎜🎜출금 메소드 호출 시 commit=true를 전달한 경우 이 작업을 실행하면 됩니다. 🎜rrreee🎜결제 방법🎜🎜결제 방법 목록🎜rrreee🎜결제 방법 가져오기🎜rrreee🎜Merchant🎜🎜판매자 가져오기🎜rrreee🎜Orders🎜🎜주문 목록 보기🎜rrreee🎜주문 받기🎜rrreee🎜주문 만들기🎜rrre ee🎜주문 환불 🎜rrreee🎜 Checkout🎜🎜결제 주문 목록 표시🎜rrreee🎜결제 주문 만들기🎜rrreee🎜Checkout🎜rrreee🎜결제 주문 받기🎜rrreee🎜결제 주문 만들기🎜
$order = $client->createNewCheckoutOrder($checkout);

通知webhook和验证

$raw_body = file_get_contents('php://input');
$signature = $_SERVER['HTTP_CB_SIGNATURE'];
$authenticity = $client->verifyCallback($raw_body, $signature); // boolean

贡献和测试

测试套件使用PHPUnit构建。通过运行phpunit命令运行单元测试套件。

phpunit

还有一组集成测试,它们向API发出实际请求并检查生成的对象。要运行这些测试,必须将phpunit.xml.dist复制到phpunit.xml,为CB_API_KEYCB_API_SECRET变量提供值,并在运行测试套件时指定integration组。

phpunit --group integration

위 내용은 Bitcoin Coinbase 지갑 라이브러리를 사용하여 PHP를 사용하여 애플리케이션을 개발하는 방법(자세한 단계)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 segmentfault思否에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
PHP 세션의 개념을 간단한 용어로 설명하십시오.PHP 세션의 개념을 간단한 용어로 설명하십시오.Apr 26, 2025 am 12:09 AM

phpsessionstrackuserdataacrossmultiplepagerequestsususingauniqueIdStoredInAcookie.here'showtomanagetheMeftically : 1) STARTASESSIONSTART_START () andSTAREDATAIN $ _SESSION.2) RegenerATERATESSESSIDIDAFTERLOGINWITHSESSION_RATERATERATES (True) TopreventSES

PHP 세션에 저장된 모든 값을 어떻게 반복합니까?PHP 세션에 저장된 모든 값을 어떻게 반복합니까?Apr 26, 2025 am 12:06 AM

PHP에서 세션 데이터를 통한 반복은 다음 단계를 통해 달성 할 수 있습니다. 1. Session_start ()를 사용하여 세션을 시작하십시오. 2. $ _session 배열의 모든 키 값 쌍을 통해 Foreach 루프를 통과합니다. 3. 복잡한 데이터 구조를 처리 할 때 is_array () 또는 is_object () 함수를 사용하고 print_r ()를 사용하여 자세한 정보를 출력하십시오. 4. Traversal을 최적화 할 때 페이징을 사용하여 한 번에 많은 양의 데이터를 처리하지 않도록 할 수 있습니다. 이를 통해 실제 프로젝트에서 PHP 세션 데이터를보다 효율적으로 관리하고 사용하는 데 도움이됩니다.

사용자 인증에 세션을 사용하는 방법을 설명하십시오.사용자 인증에 세션을 사용하는 방법을 설명하십시오.Apr 26, 2025 am 12:04 AM

이 세션은 서버 측 상태 관리 메커니즘을 통해 사용자 인증을 인식합니다. 1) 세션 생성 및 고유 ID의 세션 생성, 2) ID는 쿠키를 통해 전달됩니다. 3) ID를 통해 서버 저장 및 세션 데이터에 액세스합니다. 4) 사용자 인증 및 상태 관리가 실현되어 응용 프로그램 보안 및 사용자 경험이 향상됩니다.

PHP 세션에 사용자 이름을 저장하는 방법의 예를 제시하십시오.PHP 세션에 사용자 이름을 저장하는 방법의 예를 제시하십시오.Apr 26, 2025 am 12:03 AM

tostoreauser'snameinaphpsession, startSessionstart_start (), wathsignthenameto $ _session [ 'username']. 1) useSentess_start () toinitializethesession.2) assimeuser'snameto $ _session [ 'username']

PHP 세션이 실패 할 수있는 몇 가지 일반적인 문제는 무엇입니까?PHP 세션이 실패 할 수있는 몇 가지 일반적인 문제는 무엇입니까?Apr 25, 2025 am 12:16 AM

phpsession 실패 이유에는 구성 오류, 쿠키 문제 및 세션 만료가 포함됩니다. 1. 구성 오류 : 올바른 세션을 확인하고 설정합니다. 2. 쿠키 문제 : 쿠키가 올바르게 설정되어 있는지 확인하십시오. 3. 세션 만료 : 세션 시간을 연장하기 위해 세션을 조정합니다 .GC_MAXLIFETIME 값을 조정하십시오.

PHP의 세션 관련 문제를 어떻게 디버그합니까?PHP의 세션 관련 문제를 어떻게 디버그합니까?Apr 25, 2025 am 12:12 AM

PHP에서 세션 문제를 디버그하는 방법 : 1. 세션이 올바르게 시작되었는지 확인하십시오. 2. 세션 ID의 전달을 확인하십시오. 3. 세션 데이터의 저장 및 읽기를 확인하십시오. 4. 서버 구성을 확인하십시오. 세션 ID 및 데이터를 출력, 세션 파일 컨텐츠보기 등을 통해 세션 관련 문제를 효과적으로 진단하고 해결할 수 있습니다.

session_start ()가 여러 번 호출되면 어떻게됩니까?session_start ()가 여러 번 호출되면 어떻게됩니까?Apr 25, 2025 am 12:06 AM

Session_Start ()로 여러 통화를하면 경고 메시지와 가능한 데이터 덮어 쓰기가 발생합니다. 1) PHP는 세션이 시작되었다는 경고를 발행합니다. 2) 세션 데이터의 예상치 못한 덮어 쓰기를 유발할 수 있습니다. 3) Session_status ()를 사용하여 반복 통화를 피하기 위해 세션 상태를 확인하십시오.

PHP에서 세션 수명을 어떻게 구성합니까?PHP에서 세션 수명을 어떻게 구성합니까?Apr 25, 2025 am 12:05 AM

SESSION.GC_MAXLIFETIME 및 SESSION.COOKIE_LIFETIME을 설정하여 PHP에서 세션 수명을 구성 할 수 있습니다. 1) SESSION.GC_MAXLIFETIME 서버 측 세션 데이터의 생존 시간을 제어합니다. 2) 세션 .Cookie_Lifetime 클라이언트 쿠키의 수명주기를 제어합니다. 0으로 설정하면 브라우저가 닫히면 쿠키가 만료됩니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기