Écrire l'API de traduction Baidu en langue Go pour réaliser la fonction de traduction chinoise et africaine
Introduction :
Avec le développement de la mondialisation, la demande de langues étrangères est de plus en plus élevée, parmi lesquelles l'importance des langues chinoises et africaines a progressivement pris de l'importance. Dans cet article, je vais partager comment écrire en langage Go et le combiner avec l'API de traduction Baidu pour réaliser la fonction de traduction en chinois et en Afrique du Sud. Grâce à cet exemple, vous apprendrez comment ajouter une telle fonctionnalité à votre propre application.
$ mkdir baidu_translation $ cd baidu_translation $ go mod init github.com/<your-username>/baidu_translation $ go get github.com/imroc/req
main.go
dans le répertoire racine du projet et copiez-y le code suivant : main.go
的文件,并将以下代码复制进去:package main import ( "encoding/json" "fmt" "github.com/imroc/req" "os" ) type BaiduTranslationResponse struct { Error int `json:"error"` ErrorCode string `json:"error_code,omitempty"` From string `json:"from"` To string `json:"to"` TransResult []Translation `json:"trans_result"` } type Translation struct { Src string `json:"src"` Dst string `json:"dst"` } func main() { translationText := "你好世界" appID := "<your-app-id>" secretKey := "<your-secret-key>" resp, err := req.Post("https://fanyi-api.baidu.com/api/trans/vip/translate", req.Param{ "q": translationText, "from": "zh", "to": "zu", "appid": appID, "salt": "1435660288", "sign": buildSign(translationText, appID, secretKey, "1435660288"), }, ) if err != nil { fmt.Println("请求错误:", err) os.Exit(1) } var translationResponse BaiduTranslationResponse err = resp.ToJSON(&translationResponse) if err != nil { fmt.Println("响应解析错误:", err) os.Exit(1) } if translationResponse.Error != 0 { fmt.Println("翻译错误:", translationResponse.ErrorCode) os.Exit(1) } translatedText := translationResponse.TransResult[0].Dst fmt.Println("翻译结果:", translatedText) } func buildSign(translationText, appID, secretKey, salt string) string { signStr := appID + translationText + salt + secretKey return fmt.Sprintf("%x", md5.Sum([]byte(signStr))) }
<your-app-id>
和<your-secret-key>
$ go run main.go
<your-app-id>
et <your-secret-key>
par la clé d'accès que vous avez demandée sur le site Web de l'API de traduction Baidu. Exécutez la commande suivante dans le terminal pour exécuter le code :
翻译结果: Sawubona Mhlaba
rrreee
Cela signifie que la traduction de "Hello World" en chinois et en africain est "Sawubona Mhlaba".
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!