File tree 2 files changed +14
-3
lines changed
2 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ type Reader struct {
14
14
off int
15
15
}
16
16
17
- var _ io.Reader = (* Reader )(nil )
17
+ var _ io.ReadCloser = (* Reader )(nil )
18
18
19
19
func NewReader (r safejs.Value ) * Reader {
20
20
return & Reader {
@@ -83,3 +83,14 @@ func (r *Reader) Read(p []byte) (int, error) {
83
83
84
84
return n , nil
85
85
}
86
+
87
+ func (r * Reader ) Close () error {
88
+ p , err := r .value .Call ("cancel" )
89
+ if err != nil {
90
+ return err
91
+ }
92
+
93
+ _ , err = promise .Await (safejs .Unsafe (p ))
94
+
95
+ return err
96
+ }
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ func Request(uvalue js.Value) (*http.Request, error) {
34
34
return nil , err
35
35
}
36
36
37
- var bodyReader io.Reader
37
+ var bodyReader io.ReadCloser
38
38
39
39
if ! body .IsNull () {
40
40
// WORKAROUND: Firefox does not have request.body ReadableStream
@@ -66,7 +66,7 @@ func Request(uvalue js.Value) (*http.Request, error) {
66
66
req := & http.Request {
67
67
Method : method ,
68
68
URL : u ,
69
- Body : io . NopCloser ( bodyReader ) ,
69
+ Body : bodyReader ,
70
70
Header : make (http.Header ),
71
71
}
72
72
You can’t perform that action at this time.
0 commit comments