mirror of
https://github.com/SagerNet/sing-box.git
synced 2024-11-29 03:51:31 +00:00
Fix '?' at end of WebSocket path get escaped
This fix align sing-box's behaviour with V2Ray when it comes to processing ? at the end of WebSocket's path.
This commit is contained in:
parent
f44f86b832
commit
b54da9c6af
|
@ -60,6 +60,10 @@ func NewClient(ctx context.Context, dialer N.Dialer, serverAddr M.Socksaddr, opt
|
||||||
if !strings.HasPrefix(uri.Path, "/") {
|
if !strings.HasPrefix(uri.Path, "/") {
|
||||||
uri.Path = "/" + uri.Path
|
uri.Path = "/" + uri.Path
|
||||||
}
|
}
|
||||||
|
if strings.HasSuffix(uri.Path, "?") {
|
||||||
|
uri.ForceQuery = true
|
||||||
|
uri.Path = strings.TrimSuffix(uri.Path, "?")
|
||||||
|
}
|
||||||
headers := make(http.Header)
|
headers := make(http.Header)
|
||||||
for key, value := range options.Headers {
|
for key, value := range options.Headers {
|
||||||
headers[key] = value
|
headers[key] = value
|
||||||
|
|
Loading…
Reference in a new issue