Skip to content

Commit 155abf0

Browse files
authored
Merge pull request #46 from chi-rei-den/squid
Update mirrors, adjust request UserAgent
2 parents 4c8c34e + dd95c7c commit 155abf0

File tree

4 files changed

+16
-15
lines changed

4 files changed

+16
-15
lines changed

Localizer/Helpers/Utils.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,14 +239,19 @@ public static void LogDebug(object o)
239239

240240
#region Network
241241

242+
internal static string UserAgent() {
243+
return $"Localizer ({Environment.OSVersion}; rv: {Localizer.Instance.Version}; {(Environment.Is64BitOperatingSystem ? "x64" : "x86")}) tModLoader/{ModLoader.versionTag} ({(Environment.Is64BitOperatingSystem ? "x64" : "x86")})";
244+
}
245+
242246
public static HttpWebResponse GET(string url)
243247
{
244248
var request = (HttpWebRequest)WebRequest.Create(url);
245249
request.Method = "GET";
246250
request.ContentType = "application/json;charset=UTF-8";
247251
request.Accept = "application/vnd.github.v3+json";
248-
request.UserAgent = "Localizer";
252+
request.UserAgent = UserAgent();
249253
request.Timeout = 9000;
254+
request.Headers["Accept-Language"] = Terraria.Localization.LanguageManager.Instance.ActiveCulture.CultureInfo.ToString();
250255

251256
return (HttpWebResponse)request.GetResponse();
252257
}

Localizer/ModBrowser/Patches.cs

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Collections.Generic;
33
using System.Linq;
44
using System.Reflection;
5+
using System.Text.RegularExpressions;
56
using Harmony;
67
using Terraria.ModLoader;
78

@@ -51,22 +52,20 @@ public static void Patch()
5152
}
5253
}
5354

55+
private static readonly Regex _defaultMirror = new Regex(@"mirror(?:\d*)?\.sgkoi\.dev");
5456
private static string GetModListURL()
5557
{
5658
var mirror = Localizer.Config.ModListMirror[0];
5759
switch (mirror)
5860
{
59-
case "mirror.sgkoi.dev":
60-
case "mirror5.sgkoi.dev":
61-
return $"https://{mirror}/tModLoader/listmods.php";
6261
case "mirror2.sgkoi.dev":
6362
return "http://www.mb.axeel.moe/tModLoader/listmods.php";
6463
case "mirror3.sgkoi.dev":
6564
return "https://trbbs.cc/trmod/listmods.php";
6665
case "mirror4.sgkoi.dev":
6766
return "http://www.mb2.axeel.moe:25555/tModLoader/listmods.php";
6867
default:
69-
return mirror;
68+
return _defaultMirror.IsMatch(mirror) ? $"https://{mirror}/tModLoader/listmods.php" : mirror;
7069
}
7170
}
7271

@@ -75,17 +74,14 @@ private static string GetModDownloadURL()
7574
var mirror = Localizer.Config.ModDownloadMirror[0];
7675
switch (mirror)
7776
{
78-
case "mirror.sgkoi.dev":
79-
case "mirror5.sgkoi.dev":
80-
return $"https://{mirror}/tModLoader/download.php?Down=mods/";
8177
case "mirror2.sgkoi.dev":
8278
return "http://www.mb.axeel.moe/tModLoader/download.php?Down=mods/";
8379
case "mirror3.sgkoi.dev":
8480
return "https://trbbs.cc/trmod/";
8581
case "mirror4.sgkoi.dev":
8682
return "http://www.mb2.axeel.moe:25555/tModLoader/download.php?Down=mods/";
8783
default:
88-
return mirror;
84+
return _defaultMirror.IsMatch(mirror) ? $"https://{mirror}/tModLoader/download.php?Down=mods/" : mirror;
8985
}
9086
}
9187

@@ -94,15 +90,12 @@ private static string GetModDescURL()
9490
var mirror = Localizer.Config.ModDescMirror[0];
9591
switch (mirror)
9692
{
97-
case "mirror.sgkoi.dev":
98-
case "mirror5.sgkoi.dev":
99-
return $"https://{mirror}/tModLoader/moddescription.php";
10093
case "mirror2.sgkoi.dev":
10194
return "http://www.mb.axeel.moe/tModLoader/moddescription.php";
10295
case "mirror4.sgkoi.dev":
10396
return "http://www.mb2.axeel.moe:25555/tModLoader/moddescription.php";
10497
default:
105-
return mirror;
98+
return _defaultMirror.IsMatch(mirror) ? $"https://{mirror}/tModLoader/moddescription.php" : mirror;
10699
}
107100
}
108101

Localizer/Network/DownloadManager.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@ public class DownloadManager : IDownloadManagerService
77
{
88
public void Download(string url, string path)
99
{
10-
new WebClient().DownloadFile(new Uri(url), path);
10+
var wc= new WebClient();
11+
wc.Headers[HttpRequestHeader.UserAgent] = Utils.UserAgent();
12+
wc.Headers[HttpRequestHeader.AcceptLanguage] = Terraria.Localization.LanguageManager.Instance.ActiveCulture.CultureInfo.ToString();
13+
wc.DownloadFile(new Uri(url), path);
1114
}
1215

1316
public void Dispose()

Localizer/build.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
author = Chireiden Team
2-
version = 1.5.0.15
2+
version = 1.5.0.16
33
displayName = Localizer
44
hideCode = true
55
hideResources = false

0 commit comments

Comments
 (0)