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

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

在 Go 中處理 JSON Post 請求 - 錯誤

在 Go 中處理 JSON Post 請求 - 錯誤

Go
守候你守候我 2021-06-18 17:04:12
我的客戶端 javascript 將此 JSON 發布到服務器端:{ username: 'hello', password: 'world' }我的 Go 服務器端代碼:type AuthJSON struct {  Username    string `json:"username"`  Password  string `json:"password"`}func AuthenticationHandler(w http.ResponseWriter, r *http.Request) {   // Parse the incoming user/pass from the request body   var body AuthJSON   err := json.NewDecoder(r.Body).Decode(&body)   log.Println(body)   log.Println(body.Username)   if err != nil {      log.Println(err)      panic(err)   }   ...}我的終端如下所示:2013/07/31 20:26:53 { }2013/07/31 20:26:53 2013/07/31 20:26:53 invalid character 'u' looking for beginning of value2013/07/31 20:26:53 http: panic serving [::1]:58141: invalid character 'u' looking for beginning of valuegoroutine 9 [running]:net/http.func·007()...顯然,我的 JSON 解析有問題,我收到一個錯誤,并調用了 panic(err)。無效字符 'u' 來自我的 JSON 中的用戶名部分。我已經用 Node 服務器測試了客戶端,效果很好。Go 非常新。任何幫助都會很棒。
查看完整描述

3 回答

?
揚帆大魚

TA貢獻1799條經驗 獲得超9個贊

您不是在 JSON 中發送數據。這就是你的 Go 服務器無法讀取的原因。使用這樣的東西:


$.ajax({

  url: '/api/auth.json',

  type: 'POST',

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

  data: JSON.stringify(data)

  // you can add callbacks as “complete”, “success”, etc.

});

我必須補充一點,我不是 jQuery 專家,因此可能有捷徑。


查看完整回答
反對 回復 2021-06-21
?
慕少森

TA貢獻2019條經驗 獲得超9個贊

嘗試通過 POSTMAN 發出請求時,我遇到了同樣的問題。將正文數據類型更改為raw并按json格式添加數據,然后它將正常工作,標題也必須是application/json


查看完整回答
反對 回復 2021-06-21
  • 3 回答
  • 0 關注
  • 247 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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