1
0
mirror of https://github.com/astaxie/beego.git synced 2024-11-17 20:10:56 +00:00

Merge pull request #70 from luw2007/luw2007

fix jsonp, use Buffer
This commit is contained in:
astaxie 2013-06-13 18:50:26 -07:00
commit 384fa8fda9

View File

@ -227,10 +227,13 @@ func (c *Controller) ServeJsonp() {
http.Error(c.Ctx.ResponseWriter, `"callback" parameter required`, http.StatusInternalServerError) http.Error(c.Ctx.ResponseWriter, `"callback" parameter required`, http.StatusInternalServerError)
return return
} }
callback_content := fmt.Sprintf("%s(%s);\r\n", callback, string(content)) callback_content := bytes.NewBufferString(callback)
c.Ctx.SetHeader("Content-Length", strconv.Itoa(len(callback_content)), true) callback_content.WriteString("(")
c.Ctx.ResponseWriter.Header().Set("Content-Type", "application/jsonp;charset=UTF-8") callback_content.Write(content)
c.Ctx.ResponseWriter.Write([]byte(callback_content)) callback_content.WriteString(");\r\n")
c.Ctx.SetHeader("Content-Length", strconv.Itoa(callback_content.Len()), true)
c.Ctx.ResponseWriter.Header().Set("Content-Type", "application/json;charset=UTF-8")
c.Ctx.ResponseWriter.Write(callback_content.Bytes())
} }
func (c *Controller) ServeXml() { func (c *Controller) ServeXml() {