avadim/yandex-cloud-translate-php

v1.1.3 2024-03-23 18:05 UTC

This package is auto-updated.

Last update: 2024-09-23 19:14:12 UTC


README

在API中通过两种方式对库进行身份验证

  1. 使用oAuth令牌
  2. 使用API密钥。

如果同时设置了oAuth令牌和API密钥,则将使用API密钥。

oAuth令牌

重要: oAuth令牌的有效期为1年,之后需要更新。

OAuth令牌用于在Yandex Cloud中对拥有雅虎账户的用户进行身份验证:用户将OAuth令牌交换为IAM令牌。

可以通过向雅虎OAuth服务发出请求来获取用于处理Yandex Cloud的OAuth令牌。

  1. 账单页面上确保付款账户处于ACTIVE或TRIAL_ACTIVE状态。如果没有付款账户,请创建一个。
  2. 获取任何目录的标识符,该目录在您的账户中具有editor或更高角色。
  3. 获取用于获取IAM令牌所需的oAuth令牌(IAM令牌将在库中自动更新):在https://cloud.yandex.ru/docs/iam/concepts/authorization/oauth-token页面上,点击请求雅虎OAuth服务的链接,并在页面上显示令牌,需要将其记录下来
$ya = new avadim\YandexCloud\Auth\Auth($oAuthToken);
$tr = new \avadim\YandexCloud\Translator\Translator($ya, $folderId);

var_dump($tr->translate('<span>красная</span> корова', 'en', null, true));
var_dump($tr->getStats());

API密钥

重要: 由于这种选项被认为不太安全,因此只能通过API密钥对某些服务进行身份验证。可以在此查看服务列表:https://cloud.yandex.ru/docs/iam/concepts/authorization/api-key

获取密钥

  • 在控制台中,选择属于服务账户的目录。
  • 转到服务账户标签页。
  • 选择服务账户,并点击其名称所在的行。
  • 在上面的面板上点击创建新密钥按钮。
  • 选择创建API密钥选项。
  • 选择加密算法。
  • 设置密钥描述,以便在控制台中更容易找到它。
// 1st way
$ya = new avadim\YandexCloud\Auth\Auth(null);
$ya->setApiKey($apiKey);
$tr = new \avadim\YandexCloud\Translator\Translator($ya, $folderId);

// 2nd way
$ya = new avadim\YandexCloud\Auth\Auth(null);
$tr = new \avadim\YandexCloud\Translator\Translator($ya, $folderId);
$tr->useApiKey($apiKey);

var_dump($tr->translate('<span>красная</span> корова', 'en', null, true));
var_dump($tr->getStats());