avadim / yandex-cloud-translate-php
v1.1.3
2024-03-23 18:05 UTC
Requires
- php: ^7.4|^8.1
- ext-curl: *
- ext-json: *
- ext-mbstring: *
README
在API中通过两种方式对库进行身份验证
- 使用oAuth令牌
- 使用API密钥。
如果同时设置了oAuth令牌和API密钥,则将使用API密钥。
oAuth令牌
重要: oAuth令牌的有效期为1年,之后需要更新。
OAuth令牌用于在Yandex Cloud中对拥有雅虎账户的用户进行身份验证:用户将OAuth令牌交换为IAM令牌。
可以通过向雅虎OAuth服务发出请求来获取用于处理Yandex Cloud的OAuth令牌。
- 在账单页面上确保付款账户处于ACTIVE或TRIAL_ACTIVE状态。如果没有付款账户,请创建一个。
- 获取任何目录的标识符,该目录在您的账户中具有editor或更高角色。
- 获取用于获取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());