support Hijacker #428
Showing
1 changed file
with
13 additions
and
0 deletions
| 1 | package beego | 1 | package beego |
| 2 | 2 | ||
| 3 | import ( | 3 | import ( |
| 4 | "bufio" | ||
| 5 | "errors" | ||
| 4 | "fmt" | 6 | "fmt" |
| 7 | "net" | ||
| 5 | "net/http" | 8 | "net/http" |
| 6 | "net/url" | 9 | "net/url" |
| 7 | "os" | 10 | "os" |
| ... | @@ -864,3 +867,13 @@ func (w *responseWriter) WriteHeader(code int) { | ... | @@ -864,3 +867,13 @@ func (w *responseWriter) WriteHeader(code int) { |
| 864 | w.started = true | 867 | w.started = true |
| 865 | w.writer.WriteHeader(code) | 868 | w.writer.WriteHeader(code) |
| 866 | } | 869 | } |
| 870 | |||
| 871 | // hijacker for http | ||
| 872 | func (w *responseWriter) Hijack() (net.Conn, *bufio.ReadWriter, error) { | ||
| 873 | hj, ok := w.writer.(http.Hijacker) | ||
| 874 | if !ok { | ||
| 875 | println("supported?") | ||
| 876 | return nil, nil, errors.New("webserver doesn't support hijacking") | ||
| 877 | } | ||
| 878 | return hj.Hijack() | ||
| 879 | } | ... | ... |
-
Please register or sign in to post a comment