gtran/translate

简化在 Laravel 5+ 中使用 Google Cloud 翻译 API 版本 2 的过程。

8.0 2021-05-04 11:59 UTC

README

简化在 Laravel 5+ 中使用 Google Cloud 翻译 API 版本 2 的过程。

通过此集成,您可以执行以下操作

  • 检测关于文本的信息,例如语言代码和脚本。请参阅 GTran@detectTextInformation。
  • 将文本从一种语言翻译成另一种语言。接受 String 或连接的 String 作为翻译查询。请参阅 GTran@translateText。
  • 将文本从一种语言翻译成另一种语言。接受 Array 作为翻译查询。请参阅 GTran@translateTextWithoutConcat。
  • 请求可用的翻译语言,包括语言代码列表。请参阅 GTran@translationsAvailable。

Laravel Google Cloud Translator 集成

有 3 个文件需要查看,以便了解集成的原理

  • config/gtran.php (API 端点和授权密钥的配置)
  • routes.php (配置 PlayWithAPIController 路由)
  • GTran\Translate\PlayWithAPIController (一个具有 API 端点操作方法的控制器)

所需包

"guzzlehttp/guzzle": "^7.0.1",

Laravel 5+ 的安装。在 8.40 上进行了测试。

  • 1- 进入您的 Laravel 项目根目录并本地安装包:-
composer require "gtran/translate"
  • 2- 安装服务提供程序并加载配置以及路由引用:-
php artisan vendor:publish
  • 3- 通过输入其索引值从列表中选择“GTran\Translate\GTranServiceProvider”提供程序。

  • 4- 进入 env 文件并在底部包含:-

GOOGLETRAN_KEY=Google Cloud API KEY
  • 5- 完成啦!

旧版 Laravel 的安装

您可能需要更多调试才能使其工作。

  • 1- 进入您的 Laravel 项目根目录并本地安装包:-
composer require "gtran/translate"
  • 2- 将 GTran 服务提供程序手动添加到 config/app.php 中的提供程序列表中:-
'providers' => [
    // ...
    GTran\Translate\\GTranServiceProvider::class,
]
  • 3- 加载配置以及路由引用:-
php artisan vendor:publish --force --provider="GTran\Translate\GTranServiceProvider"
  • 4- 进入 env 文件并在底部包含:-
GOOGLETRAN_KEY=Google Cloud API KEY
  • 5- 完成啦!

使用 PlayWithAPIController 和 Postman 进行演示

配置

  • 代码库配置

-1 前往 PlayWithAPIController

-2 前往 detectTextInformation 和 translateText 的定义。

-3 检查函数

-1 包含以下头部信息:-

Accept: application/json

2- 包含以下正文:form-data

KEY     TEXT
query    Hello

3- 响应

{
  "data": {
    "detections": [
      [
        {
          "confidence": 1,
          "isReliable": false,
          "language": "en"
        }
      ]
    ]
  }
}

-1 包含以下头部信息:-

Accept: application/json

2- 包含以下正文:form-data

KEY     TEXT
model    base, P.S. you can go for nmt, Neural Machine Translation.
locale   en

3- 响应

{
  "data": {
    "languages": [
      {
        "language": "af",
        "name": "Afrikaans"
      },
      {
        "language": "sq",
        "name": "Albanian"
      },
      {
        "language": "am",
        "name": "Amharic"
      },
      {.................................

使用方法

在您的 Laravel 项目控制器/特质顶部导入使用。

use GTran;

通过以下方式访问功能

GTran::detectTextInformation($query);

可用功能

  • detectTextInformation($query,$concat = false,$concatType = false)
  • translateTextWithoutConcat($queries, $target, $source, $format, $model)
  • translateText($query,$target,$source,$format,$model,$concat = false,$concatType = false)
  • translationsAvailable($model,$locale)

关于

GTran 包在 The Unlicense 许可下发布。如果您有任何问题,请随时通过 hi@zakaria.website 联系我们。