亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 Jquery 和 golang 中的輸入 json 數據進行 ajax 調用?

如何使用 Jquery 和 golang 中的輸入 json 數據進行 ajax 調用?

Go
至尊寶的傳說 2021-12-27 17:49:01
我正在嘗試在 Jquery 中進行 ajax 調用,但收到空響應。但是當我嘗試通過 curl 做同樣的事情時,我成功了。這是我的JS,time = new Date($.now());requestJSON = '{"Method":"GET","AppName":"Proline","ServiceURL":"http://localhost:8081/api/services/tags/","Properties":null,"Object":"","Timestamp":"'+time+'"}'$.ajax({  type: "GET",  url: "http://localhost:8081/api/services/tags/",  // The key needs to match your method's input parameter (case-sensitive).  data: requestJSON,  contentType: "application/json; charset=utf-8",  dataType: "json",  success: function(data){alert(data);},  failure: function(errMsg) {      alert(errMsg);  }});我也試過,dataType: "jsonp"但沒有運氣。curl 命令在這里,curl --data '{"Method":"GET","AppName":"Proline","ServiceURL":"http://localhost:8081/api/services/tags/","Properties":null,"Object":"","Timestamp":"2016:03:27 00:08:11"}'-X GET http://localhost:8081/api/services/tags/我在 golang 中有服務器代碼。我已經將標題設置為Access-Control-Allow-Headers:*. 這是我的服務器處理程序。 func tagsHandler(w http.ResponseWriter, r *http.Request, extra []string) {    if origin := r.Header.Get("Origin"); origin != "" {            w.Header().Set("Access-Control-Allow-Origin", origin)            w.Header().Set("Access-Control-Allow-Methods", "POST, GET, OPTIONS, PUT, DELETE")            w.Header().Set("Access-Control-Allow-Headers",                    "*")    }    // Stop here if its Preflighted OPTIONS request    if r.Method == "OPTIONS" {            return    }    var response []byte    body, err := ioutil.ReadAll(r.Body)    if err != nil {        log.Printf("FATAL IO reader issue %s ", err.Error())    }具體來說,我在服務器端收到空請求正文。有人可以幫我嗎?
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

問題是調用沒有在正文中發送請求數據 [但不知何故curl工作正常]。當我嘗試獲取body, err := ioutil.ReadAll(r.Body)它時,它給出了空值。所以我改變了從r.Form


r.ParseForm()

var body []byte

for key, _ := range r.Form {

    body = []byte(key)

    break

}

r.Form給一張地圖。所以我正在遍歷地圖并獲取 req 數據。這個SO帖子給出了解決方案。可能對其他人有幫助:)


查看完整回答
反對 回復 2021-12-27
?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

您的數據已在 console.log 中字符串化


 time = new Date($.now());

    requestJSON = '{"Method":"GET","AppName":"Proline","ServiceURL":"http://localhost:8081/api/services/tags/","Properties":null,"Object":"","Timestamp":"'+time+'"}'

    $.ajax({

      type: "GET",

      url: "http://localhost:8081/api/services/tags/",

      data:JSON.stringify(requestJSON),

      contentType: "application/json; charset=utf-8",

      dataType: "json",

      success: function(data){alert(data);},

      failure: function(errMsg) {

          alert(errMsg);

      }

    });


查看完整回答
反對 回復 2021-12-27
  • 2 回答
  • 0 關注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號