Gunakan bahasa go dan API terjemahan Baidu untuk mencapai terjemahan Cina-Slovak

WBOY
Lepaskan: 2023-08-05 10:03:20
asal
1196 orang telah melayarinya

Gunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan Cina-Slovak

Dengan pertukaran ekonomi dan budaya global yang semakin mendalam, permintaan untuk alatan terjemahan semakin meningkat. Dalam era Internet mudah alih, pelbagai aplikasi terjemahan muncul tanpa henti Antaranya, Baidu Translation API ialah perkhidmatan terjemahan popular yang menyediakan fungsi terjemahan teks pelbagai bahasa. Artikel ini akan memperkenalkan cara menggunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan Cina-Slovak.

Pertama, kita perlu mendapatkan kunci pembangun API Terjemahan Baidu. Daftar akaun di Pusat Pembangun Baidu dan buat aplikasi, kemudian dapatkan Kunci API dan Kunci Rahsia.

Seterusnya, kita perlu menulis kod bahasa Go untuk meminta API Terjemahan Baidu untuk terjemahan. Pertama, kita perlu memperkenalkan pakej http dan pakej crypto/md5 bahasa Go Kodnya adalah seperti berikut:

package main

import (
    "crypto/md5"
    "encoding/hex"
    "fmt"
    "io/ioutil"
    "net/http"
    "net/url"
    "strconv"
    "time"
)
Salin selepas log masuk

Seterusnya, kita perlu menentukan beberapa pemalar yang diperlukan, seperti URL API Terjemahan Baidu dan pembangun. kunci.

const (
    apiUrl       = "https://fanyi-api.baidu.com/api/trans/vip/translate"
    appid        = "[你的百度开发者应用APPID]"
    appKey       = "[你的百度开发者应用API Key]"
    appSecretKey = "[你的百度开发者应用Secret Key]"
)
Salin selepas log masuk

Kemudian, kita perlu menentukan fungsi untuk menjana tandatangan permintaan untuk pengesahan.

func buildSign(query string, salt string) string {
    sign := appid + query + salt + appSecretKey
    h := md5.New()
    h.Write([]byte(sign))
    return hex.EncodeToString(h.Sum(nil))
}
Salin selepas log masuk

Seterusnya, kita perlu menentukan fungsi untuk menghantar permintaan HTTP dan mendapatkan hasil terjemahan.

func translate(query string) (string, error) {
    httpClient := http.Client{
        Timeout: time.Second * 5,
    }

    salt := strconv.FormatInt(time.Now().Unix(), 10)
    sign := buildSign(query, salt)

    data := url.Values{}
    data.Set("q", query)
    data.Set("from", "zh")
    data.Set("to", "sk")
    data.Set("appid", appid)
    data.Set("salt", salt)
    data.Set("sign", sign)

    url := apiUrl + "?" + data.Encode()

    req, err := http.NewRequest(http.MethodGet, url, nil)
    if err != nil {
        return "", err
    }

    req.Header.Set("Content-Type", "application/json")

    res, getErr := httpClient.Do(req)
    if getErr != nil {
        return "", getErr
    }
    defer res.Body.Close()

    body, readErr := ioutil.ReadAll(res.Body)
    if readErr != nil {
        return "", readErr
    }

    return string(body), nil
}
Salin selepas log masuk

Akhir sekali, kita boleh menulis fungsi utama untuk menguji fungsi terjemahan kita.

func main() {
    translation, err := translate("你好")
    if err != nil {
        fmt.Println("翻译出错:", err)
        return
    }
    fmt.Println(translation)
}
Salin selepas log masuk

Dengan kod di atas, kami boleh menggunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan Cina-Slovak. Dalam fungsi utama, kami memanggil fungsi terjemah dan menghantar teks untuk diterjemahkan sebagai parameter untuk mendapatkan hasil terjemahan.

Kod di atas hanyalah contoh mudah untuk melaksanakan fungsi terjemahan bahasa Cina-Slovakia. Dalam aplikasi praktikal, kami boleh merangkum kod dan menambah fungsi seperti pengendalian pengecualian dan semakan ralat untuk meningkatkan kestabilan dan kebolehpercayaan.

Ringkasnya, menggunakan bahasa Go dan API Terjemahan Baidu untuk mencapai terjemahan bahasa Cina-Slovakia adalah teknologi yang sangat berguna dan praktikal. Dengan cara ini, kita boleh memecahkan halangan bahasa dan menggalakkan komunikasi dan kerjasama antara budaya yang berbeza. Saya harap artikel ini berguna kepada orang yang sedang belajar atau menggunakan bahasa Go untuk pembangunan terjemahan.

Atas ialah kandungan terperinci Gunakan bahasa go dan API terjemahan Baidu untuk mencapai terjemahan Cina-Slovak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan