Merge branch 'master' into features/form-binding-time-improve

This commit is contained in:
Alexander Lokhman 2018-08-22 09:32:00 +01:00 committed by GitHub
commit 3d6dc86c3e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 13 additions and 11 deletions

View File

@ -750,9 +750,12 @@ See the [detail information](https://github.com/gin-gonic/gin/issues/742#issueco
```go ```go
package main package main
import "log" import (
import "github.com/gin-gonic/gin" "log"
import "time" "time"
"github.com/gin-gonic/gin"
)
type Person struct { type Person struct {
Name string `form:"name"` Name string `form:"name"`

View File

@ -665,9 +665,9 @@ func (c *Context) Status(code int) {
func (c *Context) Header(key, value string) { func (c *Context) Header(key, value string) {
if value == "" { if value == "" {
c.Writer.Header().Del(key) c.Writer.Header().Del(key)
} else { return
c.Writer.Header().Set(key, value)
} }
c.Writer.Header().Set(key, value)
} }
// GetHeader returns value from request headers. // GetHeader returns value from request headers.
@ -755,9 +755,9 @@ func (c *Context) JSONP(code int, obj interface{}) {
callback := c.DefaultQuery("callback", "") callback := c.DefaultQuery("callback", "")
if callback == "" { if callback == "" {
c.Render(code, render.JSON{Data: obj}) c.Render(code, render.JSON{Data: obj})
} else { return
c.Render(code, render.JsonpJSON{Callback: callback, Data: obj})
} }
c.Render(code, render.JsonpJSON{Callback: callback, Data: obj})
} }
// JSON serializes the given struct as JSON into the response body. // JSON serializes the given struct as JSON into the response body.

View File

@ -13,4 +13,5 @@ var (
Marshal = json.Marshal Marshal = json.Marshal
MarshalIndent = json.MarshalIndent MarshalIndent = json.MarshalIndent
NewDecoder = json.NewDecoder NewDecoder = json.NewDecoder
NewEncoder = json.NewEncoder
) )

View File

@ -128,10 +128,8 @@ func (r AsciiJSON) Render(w http.ResponseWriter) (err error) {
var buffer bytes.Buffer var buffer bytes.Buffer
for _, r := range string(ret) { for _, r := range string(ret) {
cvt := "" cvt := string(r)
if r < 128 { if r >= 128 {
cvt = string(r)
} else {
cvt = fmt.Sprintf("\\u%04x", int64(r)) cvt = fmt.Sprintf("\\u%04x", int64(r))
} }
buffer.WriteString(cvt) buffer.WriteString(cvt)