尝试向Go网络服务器发送ajax get请求,但响应会产生500内部服务器错误

时间:2017-10-02 13:15:46

标签: javascript ajax go

我正在尝试实现一个将简单表单​​数据发送到Go网络服务器的ajax请求,然后在对客户端(网站)的响应中返回相同的值。

javascript中的Ajax请求:

sudo apt-get upgrade

}

我收到的浏览器控制台出现错误,说“xhttp.send();”中出现了内部服务器错误。

来自网络服务器的代码:

function addWheel(){
title = document.getElementById('title').value;
desc = document.getElementById('desc').value;

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
        console.log(this.responseText);
    }
};
xhttp.open("GET", "/getCardInfo?title=" + title + "&desc=" + desc, true);
xhttp.send();

}

它一直运行而不会丢失任何错误。看起来它在w.Write(a)发送它,所以我假设我的javascript中存在问题。变量d Data只是一个包含2个字符串的结构。

handle函数在main中定义如下:func ajaxHandler(w http.ResponseWriter, r *http.Request) { //parse request to struct fmt.Println("Ajaxhandler") var d Data err := json.NewDecoder(r.Body).Decode(&d) q := r.URL.Query() d.Title = q.Get("title") d.Desc = q.Get("desc") if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) } // create json response from struct a, err := json.Marshal(d) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) } _, err = w.Write(a) if err != nil { fmt.Println("handle error") }

任何人都可以看到错误所在吗?

0 个答案:

没有答案
相关问题