Сбой HTTP-запроса Golang Wasm

#http #go #webassembly

#http #Вперед #веб-сборка

Вопрос:

Я немного застрял в запросе Golang wasm. Код отлично работает в сервисе, когда я его тестирую, но когда я пытаюсь запустить его в браузере с помощью wasm, я получаю сообщение о сбое выборки. Ошибка. Этот код работает просто отлично, если я вызываю его из автономной службы:

 go func() {
        authURL := "https://auth.home.rsmachiner.com/login"
        type loginStruct struct {
            Username string `json:"username"`
            Password string `json:"password"`
        }
        fmt.Println("Pushed login button")
        fmt.Printf("Got Login: %vn", r.LoginBoxValue)
        fmt.Printf("Got Password: %vn", r.PasswordValue)
        var login loginStruct
        login.Username = r.LoginBoxValue
        login.Password = r.PasswordValue
        data, err := json.Marshal(amp;login)
        if err != nil {
            fmt.Println(err)
        }
        fmt.Println(string(data))
        req, _ := http.NewRequest("POST", authURL, bytes.NewBuffer(data))
        client := amp;http.Client{}
        resp, err := client.Do(req)
        if err != nil {
            fmt.Println("response error")
            fmt.Println(err)
            return
        }
        body, err := ioutil.ReadAll(resp.Body)
        if err != nil {
            fmt.Println(err)
            return
        }
        fmt.Print("BODY:")
        fmt.Println(string(body))
    }()
  

Который выдает следующую ошибку:

 Post "https://auth.home.rsmachiner.com/login": net/http: fetch() failed: Failed to fetch
  

Когда я пробую это с автономного клиента, он работает нормально. Сервер также разрешает CORS с

 w.Header().Set("Access-Control-Allow-Origin", "*")
  

Ответ №1:

Для всех, кто натыкается на это, это также отлично работает в браузере. Проблема заключалась в HTML, а не в коде. HTML перезагружал страницу, поэтому запрос не выполнялся из-за завершения.