XHTTP: Add "keepAlivePeriod"

This commit is contained in:
mhsanaei 2024-12-11 17:05:47 +01:00
parent 049177024b
commit b60387accb
No known key found for this signature in database
GPG key ID: D875CD086CF668A0
3 changed files with 11 additions and 5 deletions

View file

@ -507,6 +507,7 @@ class xHTTPStreamSettings extends XrayCommonClass {
}, },
mode = MODE_OPTION.AUTO, mode = MODE_OPTION.AUTO,
noGRPCHeader = false, noGRPCHeader = false,
keepAlivePeriod = 45,
) { ) {
super(); super();
this.path = path; this.path = path;
@ -520,6 +521,7 @@ class xHTTPStreamSettings extends XrayCommonClass {
this.xmux = xmux; this.xmux = xmux;
this.mode = mode; this.mode = mode;
this.noGRPCHeader = noGRPCHeader; this.noGRPCHeader = noGRPCHeader;
this.keepAlivePeriod = keepAlivePeriod;
} }
addHeader(name, value) { addHeader(name, value) {
@ -542,7 +544,8 @@ class xHTTPStreamSettings extends XrayCommonClass {
json.xPaddingBytes, json.xPaddingBytes,
json.xmux, json.xmux,
json.mode, json.mode,
json.noGRPCHeader json.noGRPCHeader,
json.keepAlivePeriod,
); );
} }
@ -563,7 +566,8 @@ class xHTTPStreamSettings extends XrayCommonClass {
cMaxLifetimeMs: this.xmux.cMaxLifetimeMs cMaxLifetimeMs: this.xmux.cMaxLifetimeMs
}, },
mode: this.mode, mode: this.mode,
noGRPCHeader: this.noGRPCHeader noGRPCHeader: this.noGRPCHeader,
keepAlivePeriod: this.keepAlivePeriod,
}; };
} }
} }

View file

@ -13,7 +13,7 @@
<a-input-number v-model.number="inbound.stream.ws.heartbeatPeriod" :min="0"></a-input-number> <a-input-number v-model.number="inbound.stream.ws.heartbeatPeriod" :min="0"></a-input-number>
</a-form-item> </a-form-item>
<a-form-item label='{{ i18n "pages.inbounds.stream.tcp.requestHeader" }}'> <a-form-item label='{{ i18n "pages.inbounds.stream.tcp.requestHeader" }}'>
<a-button icon="plus" size="small" @click="inbound.stream.ws.addHeader('host', '')"></a-button> <a-button icon="plus" size="small" @click="inbound.stream.ws.addHeader('', '')"></a-button>
</a-form-item> </a-form-item>
<a-form-item :wrapper-col="{span:24}"> <a-form-item :wrapper-col="{span:24}">
<a-input-group compact v-for="(header, index) in inbound.stream.ws.headers"> <a-input-group compact v-for="(header, index) in inbound.stream.ws.headers">

View file

@ -17,8 +17,7 @@
</a-input> </a-input>
<a-input style="width: 50%" v-model.trim="header.value" <a-input style="width: 50%" v-model.trim="header.value"
placeholder='{{ i18n "pages.inbounds.stream.general.value" }}'> placeholder='{{ i18n "pages.inbounds.stream.general.value" }}'>
<a-button slot="addonAfter" size="small" <a-button slot="addonAfter" size="small" @click="inbound.stream.xhttp.removeHeader(index)">-</a-button>
@click="inbound.stream.xhttp.removeHeader(index)">-</a-button>
</a-input> </a-input>
</a-input-group> </a-input-group>
</a-form-item> </a-form-item>
@ -28,6 +27,9 @@
<a-select-option v-for="key in MODE_OPTION" :value="key">[[ key ]]</a-select-option> <a-select-option v-for="key in MODE_OPTION" :value="key">[[ key ]]</a-select-option>
</a-select> </a-select>
</a-form-item> </a-form-item>
<a-form-item label='keep-Alive Period'>
<a-input-number v-model.number="inbound.stream.xhttp.keepAlivePeriod"></a-input-number>
</a-form-item>
<a-form-item label="Max Concurrent Upload"> <a-form-item label="Max Concurrent Upload">
<a-input v-model.trim="inbound.stream.xhttp.scMaxConcurrentPosts"></a-input> <a-input v-model.trim="inbound.stream.xhttp.scMaxConcurrentPosts"></a-input>
</a-form-item> </a-form-item>