diff --git a/web/assets/js/model/inbound.js b/web/assets/js/model/inbound.js index a36b9db2..b728c95e 100644 --- a/web/assets/js/model/inbound.js +++ b/web/assets/js/model/inbound.js @@ -496,19 +496,9 @@ class xHTTPStreamSettings extends XrayCommonClass { headers = [], scMaxBufferedPosts = 30, scMaxEachPostBytes = "1000000", - scMinPostsIntervalMs = "30", noSSEHeader = false, xPaddingBytes = "100-1000", - xmux = { - maxConcurrency: "16-32", - maxConnections: 0, - cMaxReuseTimes: "64-128", - cMaxLifetimeMs: 0, - hMaxRequestTimes: "800-900", - hKeepAlivePeriod: 0, - }, mode = MODE_OPTION.AUTO, - noGRPCHeader = false ) { super(); this.path = path; @@ -516,12 +506,9 @@ class xHTTPStreamSettings extends XrayCommonClass { this.headers = headers; this.scMaxBufferedPosts = scMaxBufferedPosts; this.scMaxEachPostBytes = scMaxEachPostBytes; - this.scMinPostsIntervalMs = scMinPostsIntervalMs; this.noSSEHeader = noSSEHeader; this.xPaddingBytes = xPaddingBytes; - this.xmux = xmux; this.mode = mode; - this.noGRPCHeader = noGRPCHeader; } addHeader(name, value) { @@ -539,12 +526,9 @@ class xHTTPStreamSettings extends XrayCommonClass { XrayCommonClass.toHeaders(json.headers), json.scMaxBufferedPosts, json.scMaxEachPostBytes, - json.scMinPostsIntervalMs, json.noSSEHeader, json.xPaddingBytes, - json.xmux, json.mode, - json.noGRPCHeader, ); } @@ -555,19 +539,9 @@ class xHTTPStreamSettings extends XrayCommonClass { headers: XrayCommonClass.toV2Headers(this.headers, false), scMaxBufferedPosts: this.scMaxBufferedPosts, scMaxEachPostBytes: this.scMaxEachPostBytes, - scMinPostsIntervalMs: this.scMinPostsIntervalMs, noSSEHeader: this.noSSEHeader, xPaddingBytes: this.xPaddingBytes, - xmux: { - maxConcurrency: this.xmux.maxConcurrency, - maxConnections: this.xmux.maxConnections, - cMaxReuseTimes: this.xmux.cMaxReuseTimes, - cMaxLifetimeMs: this.xmux.cMaxLifetimeMs, - hMaxRequestTimes: this.xmux.hMaxRequestTimes, - hKeepAlivePeriod: this.xmux.hKeepAlivePeriod, - }, mode: this.mode, - noGRPCHeader: this.noGRPCHeader, }; } } diff --git a/web/assets/js/model/outbound.js b/web/assets/js/model/outbound.js index 7a53383c..fae1a879 100644 --- a/web/assets/js/model/outbound.js +++ b/web/assets/js/model/outbound.js @@ -287,11 +287,24 @@ class xHTTPStreamSettings extends CommonClass { path = '/', host = '', mode = '', + noGRPCHeader = false, + scMinPostsIntervalMs = "30", + xmux = { + maxConcurrency: "16-32", + maxConnections: 0, + cMaxReuseTimes: "64-128", + cMaxLifetimeMs: 0, + hMaxRequestTimes: "800-900", + hKeepAlivePeriod: 0, + }, ) { super(); this.path = path; this.host = host; this.mode = mode; + this.noGRPCHeader = noGRPCHeader; + this.scMinPostsIntervalMs = scMinPostsIntervalMs; + this.xmux = xmux; } static fromJson(json = {}) { @@ -299,6 +312,9 @@ class xHTTPStreamSettings extends CommonClass { json.path, json.host, json.mode, + json.noGRPCHeader, + json.scMinPostsIntervalMs, + json.xmux ); } @@ -307,6 +323,16 @@ class xHTTPStreamSettings extends CommonClass { path: this.path, host: this.host, mode: this.mode, + noGRPCHeader: this.noGRPCHeader, + scMinPostsIntervalMs: this.scMinPostsIntervalMs, + xmux: { + maxConcurrency: this.xmux.maxConcurrency, + maxConnections: this.xmux.maxConnections, + cMaxReuseTimes: this.xmux.cMaxReuseTimes, + cMaxLifetimeMs: this.xmux.cMaxLifetimeMs, + hMaxRequestTimes: this.xmux.hMaxRequestTimes, + hKeepAlivePeriod: this.xmux.hKeepAlivePeriod, + }, }; } } diff --git a/web/html/xui/form/outbound.html b/web/html/xui/form/outbound.html index fb9e6f41..0293ffa8 100644 --- a/web/html/xui/form/outbound.html +++ b/web/html/xui/form/outbound.html @@ -377,6 +377,30 @@ [[ key ]] + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web/html/xui/form/stream/stream_xhttp.html b/web/html/xui/form/stream/stream_xhttp.html index 1dd3c15c..749bfcee 100644 --- a/web/html/xui/form/stream/stream_xhttp.html +++ b/web/html/xui/form/stream/stream_xhttp.html @@ -27,41 +27,17 @@ [[ key ]] - + - + - - - - - - - - - - - - - - - - - - - - - - - - {{end}} \ No newline at end of file