译云机器翻译
其他 官方文档
译云机器翻译开放API是中译语通面向广大开发者提供的专业翻译服务接口
基本说明:
接口地址:http://api.yeekit.com/dotranslate.php
返回格式:json
请求方式:get/post
请求示例:http://api.yeekit.com/dotranslate.php?from=zh&to=en&app_kid=APP ID&app_key=密钥&text=我喜欢你
请求参数说明:
名称 类型 必填 说明
from string 必填 源语言(en:英语;zh:中文简体;fr:法语;es:西班牙语;pt:葡萄牙语;de:德语;pl:波兰语;fi:芬兰语;zh_TW:中文繁体)
to string 必填 目标语言(en:英语;zh:中文简体;fr:法语;es:西班牙语;pt:葡萄牙语;de:德语;pl:波兰语;fi:芬兰语;zh_TW:中文繁体)
app_kid string 必填 授权APP ID
app_key string 必填 授权APP KEY
text string 必填 待翻译文本,UTF-8编码
返回参数说明:
名称 类型 说明
- - -
JSON返回示例:
{
	"translation": [{
		"translated": [{
			"src-tokenized": ["我", " ", "喜", "欢", " ", "你"],
			"score": -5.687654018402099,
			"rank": 0,
			"text": "I like you"
		}],
		"translationId": "6c64d73b1174431eb2f743c6eac5983c"
	}]
}
服务级错误码参照
错误码 说明
1 请求超时
2 系统错误
3 未授权用户
4 必填参数为空
5 访问频率受限
6 源语言不支持
7 目标语言不支持
8 请求语言对不支持
9 当前请求总字符超过当天最大流量限制
10 请求长度过长
完整教学代码示例
<?php

/**
 * Created by PhpStorm.
 * User: FZS
 * Time: 2020/01/06 22:16
 */
//----------------------------------
// 译云机器翻译 调用类
//----------------------------------
class freeApi{
    private $apiUrl;
    private $appKey;
    private $appId;

    public function __construct($appKey,$appId){
        $this->appKey = $appKey;
        $this->appId = $appId;
        $this->apiUrl = 'http://api.yeekit.com/dotranslate.php';
    }
    /**
     * 获取结果
     * @return array
     */
    public function getResult(){
        $paras = [
            'app_kid' => $this->appKey,
            'app_key' => $this->appId,
            'from' => 'zh',
            'to' => 'en',
            'text' => '我喜欢你'
        ];
        return $this->freeApiCurl($this->apiUrl,$paras);
    }
    /**
     * 请求接口返回内容
     * @param  string $url [请求的URL地址]
     * @param  string $params [请求的参数]
     * @param  int $ipost [是否采用POST形式]
     * @return  string
     */
    public function freeApiCurl($url,$params=false){
        $headers = array('Content-Type: application/x-www-form-urlencoded');
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); // 从证书中检查SSL加密算法是否存在
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转
        curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer
        curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($params)); // Post提交的数据包
        curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环
        curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        $result = curl_exec($curl); // 执行操作
        if (curl_errno($curl)) {
            echo 'Errno'.curl_error($curl);//捕抓异常
        }
        curl_close($curl); // 关闭CURL会话
        return $result;
    }
}
package main

import (
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
)

const (
	APIURL   = "http://api.yeekit.com/dotranslate.php"
	APIKEY = "APP ID"
	APIID = "密钥"
)

func main() {
	queryUrl := fmt.Sprintf("%s?app_kid=%s&app_key=%s&from=zh&to=en&text=我喜欢你",APIURL,APIKEY,APIID)
	resp, err := http.Get(queryUrl)
	if err != nil {
		log.Println(err)
		return
	}

	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)

	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Println(string(body))
}