fork download
  1. package main
  2.  
  3. import (
  4. "bytes"
  5. "encoding/json"
  6. "fmt"
  7. "io/ioutil"
  8. "net/http"
  9. )
  10.  
  11. // Struct для отправки запроса на перевод
  12. type TranslationRequest struct {
  13. Text string `json:"text"`
  14. Target string `json:"target_language"`
  15. }
  16.  
  17. // Struct для обработки ответа от API
  18. type TranslationResponse struct {
  19. TranslatedText string `json:"translated_text"`
  20. }
  21.  
  22. func main() {
  23. // Текст, который нужно перевести
  24. textToTranslate := "Hello, world!"
  25. targetLang := "ru"
  26.  
  27. // Создание запроса
  28. requestBody, _ := json.Marshal(TranslationRequest{Text: textToTranslate, Target: targetLang})
  29. req, err := http.NewRequest("POST", "https://a...content-available-to-author-only...r.com/translate", bytes.NewBuffer(requestBody))
  30. if err != nil {
  31. fmt.Println("Ошибка при создании запроса:", err)
  32. return
  33. }
  34. req.Header.Set("Content-Type", "application/json")
  35. // Здесь может понадобиться добавить заголовок с ключом API, например:
  36. // req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
  37.  
  38. // Выполнение запроса
  39. client := &http.Client{}
  40. resp, err := client.Do(req)
  41. if err != nil {
  42. fmt.Println("Ошибка при выполнении запроса:", err)
  43. return
  44. }
  45. defer resp.Body.Close()
  46.  
  47. // Чтение и обработка ответа
  48. body, err := ioutil.ReadAll(resp.Body)
  49. if err != nil {
  50. fmt.Println("Ошибка при чтении ответа:", err)
  51. return
  52. }
  53.  
  54. // Парсинг ответа
  55. var translationResp TranslationResponse
  56. err = json.Unmarshal(body, &translationResp)
  57. if err != nil {
  58. fmt.Println("Ошибка при парсинге JSON:", err)
  59. return
  60. }
  61.  
  62. fmt.Printf("Оригинал: %s\n", textToTranslate)
  63. fmt.Printf("Перевод: %s\n", translationResp.TranslatedText)
  64. }
  65.  
Success #stdin #stdout 0.01s 7936KB
stdin
Standard input is empty
stdout
Ошибка при выполнении запроса: Post https://a...content-available-to-author-only...r.com/translate: dial tcp: lookup api.example-translator.com on 8.8.8.8:53: dial udp 8.8.8.8:53: connect: network is unreachable