mirror of
https://github.com/XTLS/Xray-core.git
synced 2025-08-23 01:56:48 +08:00
SplitHTTP: More range options, change defaults, enforce maxUploadSize, fix querystring behavior (#3603)
* maxUploadSize and maxConcurrentUploads can now be ranges on the client * maxUploadSize is now enforced on the server * the default of maxUploadSize is 2MB on the server, and 1MB on the client * the default of maxConcurrentUploads is 200 on the server, and 100 on the client * ranges on the server are treated as a single number. if server is configured as `"1-2"`, server will enforce `2` * querystrings in `path` are now handled correctly
This commit is contained in:
51
transport/internet/splithttp/config_test.go
Normal file
51
transport/internet/splithttp/config_test.go
Normal file
@@ -0,0 +1,51 @@
|
||||
package splithttp_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
. "github.com/xtls/xray-core/transport/internet/splithttp"
|
||||
)
|
||||
|
||||
func Test_GetNormalizedPath(t *testing.T) {
|
||||
c := Config{
|
||||
Path: "/?world",
|
||||
}
|
||||
|
||||
path := c.GetNormalizedPath("hello", true)
|
||||
if path != "/hello?world" {
|
||||
t.Error("Unexpected: ", path)
|
||||
}
|
||||
}
|
||||
|
||||
func Test_GetNormalizedPath2(t *testing.T) {
|
||||
c := Config{
|
||||
Path: "?world",
|
||||
}
|
||||
|
||||
path := c.GetNormalizedPath("hello", true)
|
||||
if path != "/hello?world" {
|
||||
t.Error("Unexpected: ", path)
|
||||
}
|
||||
}
|
||||
|
||||
func Test_GetNormalizedPath3(t *testing.T) {
|
||||
c := Config{
|
||||
Path: "hello?world",
|
||||
}
|
||||
|
||||
path := c.GetNormalizedPath("", true)
|
||||
if path != "/hello/?world" {
|
||||
t.Error("Unexpected: ", path)
|
||||
}
|
||||
}
|
||||
|
||||
func Test_GetNormalizedPath4(t *testing.T) {
|
||||
c := Config{
|
||||
Path: "hello?world",
|
||||
}
|
||||
|
||||
path := c.GetNormalizedPath("", false)
|
||||
if path != "/hello/" {
|
||||
t.Error("Unexpected: ", path)
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user