为了账号安全,请及时绑定邮箱和手机立即绑定

Fullcalendar 不呈现从 golang gin 获取的事件

Fullcalendar 不呈现从 golang gin 获取的事件

Go
明月笑刀无情 2023-04-24 15:47:36
我是 golang 和 web-dev 的新手,我使用 gin 作为 api 为 fullcalendar 提供事件作为 json。这是我的全日历事件配置:<script>    $(function(){        $('#calendar').fullCalendar({            header: {                left: 'prev,next today',                center: 'title',                right: 'month,agendaWeek,agendaDay'            },            defaultView: 'month',            events: {                url: '/events',                type: 'POST'            }        })    });</script>下面是我的杜松子酒处理程序:func EventsJSON(c *gin.Context) {    start := c.PostForm("start")    end := c.PostForm("end")    es := models.GetEvents(start, end)    jes, err := json.Marshal(es)    if err != nil {        fmt.Println(err)    }    c.JSON(200, gin.H{"events": jes})}但是事件没有在日历上呈现,我不确定在响应客户端之前是否应该用 string(jes) 转换它或者 fullcalendar 事件配置有问题我检查了响应主体,发现事件是这样的{"events":"W3siaWQiOjEsInRpdGxlIjoidGVzdCBldmVudCIsInN0YXJ0IjoiMjAxOC0xMC0wOVQyMDowNzo1MC40MDIyODYrMDg6MDAiLCJlbmQiOiIyMDE4LTEwLTA5VDIwOjU3OjUwLjQwMjI4NiswODowMCIsImRlc2NyaXB0aW9uIjoxfSx7ImlkIjoyLCJ0aXRsZSI6InRlc3QgZXZlbnQiLCJzdGFydCI6IjIwMTgtMTAtMTFUMTU6MDM6NDMuOTYzMTk4KzA4OjAwIiwiZW5kIjoiMjAxOC0xMC0xMVQxNTo1Mzo0My45NjMxOTgrMDg6MDAiLCJkZXNjcmlwdGlvbiI6MX1d"}我做 string(jes) 并且响应 json 变成{"events":"[{\"id\":1,\"title\":\"test event\",\"start\":\"2018-10-09T20:07:50.402286+08:00\",\"end\":\"2018-10-09T20:57:50.402286+08:00\",\"description\":1},{\"id\":2,\"title\":\"test event\",\"start\":\"2018-10-11T15:03:43.963198+08:00\",\"end\":\"2018-10-11T15:53:43.963198+08:00\",\"description\":1}]"}如果我不做 json.Marshal()func EventsJSON(c *gin.Context) {    start := c.PostForm("start")    end := c.PostForm("end")    es := models.GetEvents(start, end)    c.JSON(200, gin.H{"events": es})}事实证明 c.JSON 已经将它序列化为 json,但是事件仍然没有呈现到日历中......
查看完整描述

1 回答

?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

它似乎没有提供 fullcalendar 可以读取的确切响应格式,因此将处理程序更改为不使用密钥响应解决了问题


func EventsJSON(c *gin.Context) {

start := c.PostForm("start")

end := c.PostForm("end")

es := models.GetEvents(start, end)

c.JSON(200, es})

}


查看完整回答
反对 回复 2023-04-24
  • 1 回答
  • 0 关注
  • 111 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信