]> Cypherpunks.ru repositories - gostls13.git/commitdiff
net/http: remove "number:" from Response.Status string
authorDmitri Shuralyov <dmitshur@golang.org>
Mon, 29 Apr 2019 04:23:16 +0000 (00:23 -0400)
committerDmitri Shuralyov <dmitshur@golang.org>
Mon, 29 Apr 2019 15:23:10 +0000 (15:23 +0000)
The behavior of Value.String method on non-string JavaScript types has
changed after CL 169757.

Update the implementation of Transport.RoundTrip method to construct the
Response.Status string without relying on result.Get("status").String(),
since that now returns strings like "<number: 200>" instead of "200".

Fixes #31736

Change-Id: I27b3e6cc95aa65fd1918b1400e88478a154aad12
Reviewed-on: https://go-review.googlesource.com/c/go/+/174218
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Richard Musiol <neelance@gmail.com>
src/net/http/roundtrip_js.go

index 21d19515fac1632630592db2193146fd8ddf6a91..7d965f844fb725eb3c0992f4c454bd94143cef26 100644 (file)
@@ -138,10 +138,11 @@ func (t *Transport) RoundTrip(req *Request) (*Response, error) {
                        body = &arrayReader{arrayPromise: result.Call("arrayBuffer")}
                }
 
+               code := result.Get("status").Int()
                select {
                case respCh <- &Response{
-                       Status:        result.Get("status").String() + " " + StatusText(result.Get("status").Int()),
-                       StatusCode:    result.Get("status").Int(),
+                       Status:        fmt.Sprintf("%d %s", code, StatusText(code)),
+                       StatusCode:    code,
                        Header:        header,
                        ContentLength: contentLength,
                        Body:          body,