Rumah > Artikel > pembangunan bahagian belakang > Menulis API Terjemahan Baidu dalam bahasa Go untuk melaksanakan fungsi terjemahan Cina-Hindi
Menulis API Terjemahan Baidu dalam bahasa Go untuk melaksanakan fungsi terjemahan Cina-Hindi
Dalam era globalisasi semasa, pertukaran bahasa telah menjadi lebih kerap dan penting. Memandangkan populariti bahasa Cina-Hindi semakin meningkat, keperluan untuk menyediakan fungsi terjemahan Cina-Hindi juga semakin meningkat dari hari ke hari. API Terjemahan Baidu ialah alat berkuasa yang boleh mencapai terjemahan antara pelbagai bahasa. Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk menulis kod, memanggil API Terjemahan Baidu dan merealisasikan fungsi terjemahan Cina-Hindi.
Pertama, kami perlu memohon aplikasi API terjemahan pada Platform Pembangun Baidu dan mendapatkan kunci yang sepadan. Selepas mendapat kunci, kita boleh mula menulis kod Go.
Mula-mula, kami perlu memperkenalkan beberapa pakej yang diperlukan:
package main import ( "fmt" "io/ioutil" "net/http" "strings" )
Seterusnya, kami menentukan fungsi untuk menghantar permintaan HTTP POST dan mengembalikan hasil terjemahan:
func translate(text string) (string, error) { url := "http://api.fanyi.baidu.com/api/trans/vip/translate" data := make(map[string]string) data["q"] = text data["from"] = "auto" data["to"] = "zh" params := []string{} for key, value := range data { params = append(params, key+"="+value) } appid := "your_appid" secretKey := "your_secretkey" salt := "1435660288" sign := appid + text + salt + secretKey signMd5 := md5.Sum([]byte(sign)) signStr := fmt.Sprintf("%x", signMd5) params = append(params, "appid="+appid) params = append(params, "salt="+salt) params = append(params, "sign="+signStr) body := strings.NewReader(strings.Join(params, "&")) resp, err := http.Post(url, "application/x-www-form-urlencoded", body) if err != nil { return "", err } defer resp.Body.Close() bb, err := ioutil.ReadAll(resp.Body) if err != nil { return "", err } return string(bb), nil }
Dalam kod di atas, kami mula-mula menentukan URL API terjemahan, dan letakkan teks dan parameter berkaitan yang perlu diterjemahkan ke dalam kamus data
. Kemudian kami menggabungkan parameter dan mengira tandatangan. Akhir sekali, kami menggunakan kaedah http.Post
untuk menghantar permintaan HTTP POST dan menghuraikan serta mengembalikan hasil yang dikembalikan. data
字典中。然后我们将参数进行拼接,并计算签名。最后我们使用http.Post
方法发送HTTP POST请求,并将返回的结果解析并返回。
最后,我们可以在main
函数中调用translate
函数,并输出翻译的结果:
func main() { text := "Hello, world!" result, err := translate(text) if err != nil { fmt.Println("翻译失败:", err) return } fmt.Println("翻译结果:", result) }
将代码保存为main.go
,然后使用go run main.go
terjemah
dalam fungsi main
dan mengeluarkan hasil terjemahan: rrreee
Simpan kod sebagaimain.go
, dan kemudian gunakan perintah go run main.go
untuk menjalankan program dan anda boleh melihat hasil terjemahan output. Dengan contoh kod di atas, kami boleh melaksanakan fungsi terjemahan antara bahasa Cina dan Hindi. Sudah tentu, ia juga boleh dikembangkan dan diubah suai mengikut keperluan anda sendiri untuk memenuhi lebih banyak keperluan terjemahan. 🎜🎜Ringkasnya, adalah mudah dan pantas untuk menulis API Terjemahan Baidu dalam bahasa Go untuk merealisasikan fungsi terjemahan Cina-Hindi. Saya harap artikel ini dapat memberi anda sedikit bantuan, dan selamat menulis! 🎜Atas ialah kandungan terperinci Menulis API Terjemahan Baidu dalam bahasa Go untuk melaksanakan fungsi terjemahan Cina-Hindi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!