mirror of https://github.com/XTLS/Xray-core
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
601 B
35 lines
601 B
package websocket |
|
|
|
import ( |
|
"net/http" |
|
|
|
"github.com/xtls/xray-core/common" |
|
"github.com/xtls/xray-core/transport/internet" |
|
) |
|
|
|
const protocolName = "websocket" |
|
|
|
func (c *Config) GetNormalizedPath() string { |
|
path := c.Path |
|
if path == "" { |
|
return "/" |
|
} |
|
if path[0] != '/' { |
|
return "/" + path |
|
} |
|
return path |
|
} |
|
|
|
func (c *Config) GetRequestHeader() http.Header { |
|
header := http.Header{} |
|
for _, h := range c.Header { |
|
header.Add(h.Key, h.Value) |
|
} |
|
return header |
|
} |
|
|
|
func init() { |
|
common.Must(internet.RegisterProtocolConfigCreator(protocolName, func() interface{} { |
|
return new(Config) |
|
})) |
|
}
|
|
|