Я использую jquery для отправки данных ajax json для веб-сервиса golang restful. И хочу проанализировать данные json в моем бэкэнде, используя golang. Вот простой код JavaScript:
$.ajax({
url: "http://localhost:8080/persons",
type: "POST",
dataType: "json",
data: {
"data": '{"firstName": "Hello","lastName": "World"}'
},
success:function (res) {
console.log(res)
},
error: function (err){
console.log(err)
}
})
Затем используйте GetRawData () для получения информации о gin.Context и декодер json для анализа содержимого json,
data, _ := c.GetRawData()
jsonStream := string(data)
dec := json.NewDecoder(strings.NewReader(jsonStream))
t, err := dec.Token()
if err != nil {
log.Fatal(err)
}
for dec.More() {
var p Person
err := dec.Decode(&p)
if err != nil {
log.Fatal(err)
}
fmt.Printf("Hello %s\n", p.firstName)
}
Готово!