https://github.com/2dust/v2rayNG/issues/3988
This commit is contained in:
2dust
2024-11-19 20:38:44 +08:00
parent 1f6104de8b
commit 6f2c96c2b6
2 changed files with 16 additions and 5 deletions

View File

@@ -26,6 +26,7 @@ import com.v2ray.ang.R
import com.v2ray.ang.dto.EConfigType
import com.v2ray.ang.dto.NetworkType
import com.v2ray.ang.dto.ProfileItem
import com.v2ray.ang.extension.isNotNullEmpty
import com.v2ray.ang.extension.toast
import com.v2ray.ang.handler.MmkvManager
import com.v2ray.ang.util.JsonUtil
@@ -168,7 +169,7 @@ class ServerActivity : BaseActivity() {
types,
when (networks[position]) {
NetworkType.GRPC.type -> config?.mode
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> config?.xhttpMode
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> config?.xhttpMode
else -> config?.headerType
}.orEmpty()
)
@@ -221,7 +222,7 @@ class ServerActivity : BaseActivity() {
)
et_extra?.text = Utils.getEditable(
when (networks[position]) {
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> JsonUtil.toJsonPretty(JsonUtil.parseString(config?.xhttpExtra))
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> config?.xhttpExtra
else -> null
}.orEmpty()
)
@@ -468,6 +469,12 @@ class ServerActivity : BaseActivity() {
return false
}
}
if (et_extra?.text?.toString().isNotNullEmpty()) {
if (JsonUtil.parseString(et_extra?.text?.toString()) == null) {
toast(R.string.server_lab_xhttp_extra)
return false
}
}
saveCommon(config)
saveStreamSettings(config)
@@ -577,7 +584,7 @@ class ServerActivity : BaseActivity() {
grpcModes
}
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> {
NetworkType.SPLIT_HTTP.type, NetworkType.XHTTP.type -> {
xhttpMode
}

View File

@@ -42,7 +42,11 @@ object JsonUtil {
fun parseString(src: String?): JsonObject? {
if (src == null)
return null
return JsonParser.parseString(src).getAsJsonObject()
try {
return JsonParser.parseString(src).getAsJsonObject()
} catch (e: Exception) {
e.printStackTrace()
return null
}
}
}