diff --git a/internal/translate/apertiumtranslate/translator.go b/internal/translate/apertiumtranslate/translator.go index cc8b464..af7d891 100644 --- a/internal/translate/apertiumtranslate/translator.go +++ b/internal/translate/apertiumtranslate/translator.go @@ -51,7 +51,7 @@ func (t *ApertiumTranslate) SwapLang() { } func (t *ApertiumTranslate) Translate(message string) (translation, definition, partOfSpeech string, err error) { - var data interface{} + var data map[string]interface{} urlStr := fmt.Sprintf( textURL, @@ -71,11 +71,11 @@ func (t *ApertiumTranslate) Translate(message string) (translation, definition, return "", "", "", err } - if len(data.(map[string]interface{})) > 0 { + if len(data) > 0 { switch res.StatusCode { case 200: translation += fmt.Sprintf("%v", - data.(map[string]interface{})["responseData"].(map[string]interface{})["translatedText"]) + data["responseData"].(map[string]interface{})["translatedText"]) default: return "", "", "", errors.New( fmt.Sprintf("%s does not support translate from %s to %s.\nSee available pair on %s", diff --git a/internal/translate/argostranslate/translator.go b/internal/translate/argostranslate/translator.go index 7afcc86..4703e0b 100644 --- a/internal/translate/argostranslate/translator.go +++ b/internal/translate/argostranslate/translator.go @@ -51,7 +51,7 @@ func (t *ArgosTranslate) SwapLang() { } func (t *ArgosTranslate) Translate(message string) (translation, definition, partOfSpeech string, err error) { - var data interface{} + var data map[string]interface{} res, err := http.PostForm(textURL, url.Values{ @@ -70,9 +70,8 @@ func (t *ArgosTranslate) Translate(message string) (translation, definition, par return "", "", "", err } - if len(data.(map[string]interface{})) > 0 { - translation += fmt.Sprintf("%v", - data.(map[string]interface{})["translatedText"]) + if len(data) > 0 { + translation += fmt.Sprintf("%v", data["translatedText"]) return translation, definition, partOfSpeech, nil }