Go
Go
Amazon Translate Text
See more AWS Translate Examples
Demonstrates how to use the AWS Translate service to translate text from one language to another.Chilkat Go Downloads
success := false
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
rest := chilkat.NewRest()
authAws := chilkat.NewAuthAws()
authAws.SetAccessKey("AWS_ACCESS_KEY")
authAws.SetSecretKey("AWS_SECRET_KEY")
authAws.SetRegion("us-west-2")
authAws.SetServiceName("translate")
rest.SetAuthAws(authAws)
// URL: https://translate.us-west-2.amazonaws.com/
bTls := true
port := 443
bAutoReconnect := true
success = rest.Connect("translate.us-west-2.amazonaws.com",port,bTls,bAutoReconnect)
if success != true {
fmt.Println("ConnectFailReason: ", rest.ConnectFailReason())
fmt.Println(rest.LastErrorText())
rest.DisposeRest()
authAws.DisposeAuthAws()
return
}
// Translate text from English to German
json := chilkat.NewJsonObject()
json.UpdateString("SourceLanguageCode","en")
json.UpdateString("TargetLanguageCode","de")
json.UpdateString("Text","This is the text to be translated")
rest.AddHeader("Content-Type","application/x-amz-json-1.1")
rest.AddHeader("X-Amz-Target","AWSShineFrontendService_20170701.TranslateText")
sbRequestBody := chilkat.NewStringBuilder()
json.EmitSb(sbRequestBody)
sbResponseBody := chilkat.NewStringBuilder()
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
if success != true {
fmt.Println(rest.LastErrorText())
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
return
}
respStatusCode := rest.ResponseStatusCode()
if respStatusCode >= 400 {
fmt.Println("Response Status Code = ", respStatusCode)
fmt.Println("Response Header:")
fmt.Println(rest.ResponseHeader())
fmt.Println("Response Body:")
fmt.Println(*sbResponseBody.GetAsString())
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
return
}
jsonResponse := chilkat.NewJsonObject()
jsonResponse.LoadSb(sbResponseBody)
jsonResponse.SetEmitCompact(false)
fmt.Println(*jsonResponse.Emit())
// {
// "SourceLanguageCode": "en",
// "TargetLanguageCode": "de",
// "TranslatedText": "Dies ist der zu �bersetzende Text"
// }
fmt.Println(*jsonResponse.StringOf("TranslatedText"))
rest.DisposeRest()
authAws.DisposeAuthAws()
json.DisposeJsonObject()
sbRequestBody.DisposeStringBuilder()
sbResponseBody.DisposeStringBuilder()
jsonResponse.DisposeJsonObject()