From 0fc2962749e7e1f4078717a9914ac8175a2c4b26 Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期四, 26 九月 2024 20:53:55 +0800 Subject: [PATCH] 可视对讲,注册 --- HDL_ON/UI/UI1-Login/RegisterPageBLL.cs | 37 ++++++++++++++++++++++++++++++------- 1 files changed, 30 insertions(+), 7 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs index 50aa11f..3cb73e7 100644 --- a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs @@ -1,9 +1,11 @@ 锘縰sing System; using System.Collections.Generic; +using System.Net.Http; using System.Text.RegularExpressions; using System.Threading; using HDL_ON.DAL.Server; using HDL_ON.UI.CSS; +using Newtonsoft.Json.Linq; using Shared; namespace HDL_ON.UI.UI1Login @@ -776,13 +778,34 @@ waitPage.Start(Language.StringByID(StringId.PleaseWait)); - System.Threading.Tasks.Task.Run(() => + System.Threading.Tasks.Task.Run(async () => { try { - Console.WriteLine("GetCountryByIP"); - var ddd = JLCountrycode.CountryCodeView.Current.GetCountryByIP(); - Console.WriteLine(ddd); + string country = "CN"; + + try + { + using (HttpClient client = new HttpClient()) + { + // 浣跨敤 ipinfo.io 鑾峰彇浣嶇疆淇℃伅 + HttpResponseMessage response = await client.GetAsync("https://ipinfo.io/json"); + + if (response.IsSuccessStatusCode) + { + string json = await response.Content.ReadAsStringAsync(); + JObject jsonObject = JObject.Parse(json); + + // 浠庤繑鍥炵殑 JSON 涓彁鍙栧浗瀹朵俊鎭� + country = jsonObject["country"].ToString(); + } + } + } + catch (Exception ex) + { + MainPage.Log("Error",$"Error fetching IP info: {ex.StackTrace}"); + } + serverList = new List<GlobalRegionListRes>(); var requestJson = HttpUtil.GetSignRequestJson(new GetRegionListObj() { regionMark = HttpUtil.RegionMark }); var revertObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_GlobalRegionList, requestJson, HttpUtil.GlobalRequestHttpsHost); @@ -796,12 +819,12 @@ serverList = responseDataObj; if (serverList.Count > 0) { - if (Language.CurrentLanguage == "Chinese") + if (country == "CN")//if (Language.CurrentLanguage == "Chinese") { var server = serverList.Find((obj) => obj.regionUrl.Contains("china-gateway")); if (server != null) { - OnAppConfig.Instance.GlobalRegion.regionUrl = server.regionUrl; + OnAppConfig.Instance.GlobalRegion = server; SetServerText(); } } @@ -810,7 +833,7 @@ var server = serverList.Find((obj) => obj.regionUrl.Contains("bahrain-gateway")); if (server != null) { - OnAppConfig.Instance.GlobalRegion.regionUrl = server.regionUrl; + OnAppConfig.Instance.GlobalRegion = server; SetServerText(); } } -- Gitblit v1.8.0