Go 언어와 Baidu 번역 API를 사용하여 중국어와 말레이어 간 상호 번역을 구현합니다.
세계화가 진행되면서 언어 의사소통이 더욱 중요해졌습니다. 개발자의 경우 다국어 애플리케이션을 구축할 때 강력한 번역 도구가 특히 중요합니다. 이 기사에서는 Go 언어와 Baidu Translation API를 사용하여 중국어와 말레이어 간의 상호 번역을 구현하는 방법을 소개합니다.
시작하기 전에 몇 가지 준비를 해야 합니다.
먼저 바이두 번역 오픈 플랫폼 계정을 등록하고 애플리케이션을 생성하여 API 키를 획득해야 합니다.
Go 언어 환경이 올바르게 설치되었는지 확인하세요. 아직 설치되지 않은 경우 공식 웹사이트에서 다운로드한 후 안내에 따라 설치할 수 있습니다.
요청을 보내고 응답을 받으려면 HTTP 요청 라이브러리를 사용해야 합니다. 터미널에서 다음 명령을 실행하여 해당 종속성 패키지를 설치합니다:
go get github.com/parnurzeal/gorequest
먼저 필요한 종속성 패키지를 가져오고 전역 변수를 설정해야 합니다. 프로젝트 파일에 main.go 파일을 생성하고 다음 내용을 복사합니다.
package main import ( "fmt" "github.com/parnurzeal/gorequest" "encoding/json" ) const ( API_KEY = "你的API密钥" ) type TranslationResponse struct { ErrorCode int `json:"error_code"` ErrorMsg string `json:"error_msg"` TransResult []struct { Src string `json:"src"` Dest string `json:"dst"` } `json:"trans_result"` }
다음으로 간단한 번역 기능을 구현하겠습니다. main.go 파일에 다음 코드를 추가합니다.
func TranslateText(text, from, to string) (string, error) { url := fmt.Sprintf("https://fanyi-api.baidu.com/api/trans/vip/translate?q=%s&from=%s&to=%s&appid=%s&salt=1435660288&sign=47b8a70a0d9acde1b6734f61e5c4a8e1", text, from, to, API_KEY) request := gorequest.New() resp, _, errs := request.Get(url).End() if errs != nil { return "", errs[0] } var translationResp TranslationResponse decoder := json.NewDecoder(resp.Body) if err := decoder.Decode(&translationResp); err != nil { return "", err } return translationResp.TransResult[0].Dest, nil }
마지막으로 번역 기능을 검증하기 위한 간단한 테스트 함수를 작성하겠습니다. main.go 파일 끝에 다음 코드를 추가합니다.
func main() { text := "你好,世界!" from := "zh" to := "ms" translation, err := TranslateText(text, from, to) if err != nil { fmt.Println("翻译失败:", err) return } fmt.Println("翻译结果:", translation) }
터미널에서 프로젝트 파일의 루트 디렉터리에 입력하고 다음 명령을 실행하여 컴파일합니다. 프로젝트:
go build
다음 명령을 실행하여 프로젝트를 실행합니다.
./project_name
Go 언어와 Baidu 번역 API를 사용하여 중국어와 말레이어 간의 상호 번역에 성공했습니다. 더 많은 언어 간에 번역 기능을 구현하기 위해 필요에 따라 확장할 수 있습니다. 이 기사가 도움이 되기를 바랍니다!
위 내용은 go 언어와 Baidu 번역 API를 사용하여 중국어와 말레이어를 서로 번역하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!