From 05acfc6b510ed5fff84f5cb9e683eb597928b774 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Fri, 8 Nov 2024 16:19:14 +0800 Subject: [PATCH 1/6] =?UTF-8?q?fix:=20B=E7=AB=99=E5=9B=BE=E5=BA=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Modules/ModSecret.vb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Plain Craft Launcher 2/Modules/ModSecret.vb b/Plain Craft Launcher 2/Modules/ModSecret.vb index fb7644c..3b5197d 100644 --- a/Plain Craft Launcher 2/Modules/ModSecret.vb +++ b/Plain Craft Launcher 2/Modules/ModSecret.vb @@ -108,7 +108,9 @@ Friend Module ModSecret Else Client.Headers("User-Agent") = "PCL2/" & VersionStandardCode End If - Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" + If Not Url.Contains("hdslb.com") Then + Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" + End If Client.Headers("x-api-key") = CurseForgeAPIKey End Sub ''' From 5d16cf24bb13b9398bb8569d6bee092f75164ce6 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Fri, 8 Nov 2024 16:51:38 +0800 Subject: [PATCH 2/6] =?UTF-8?q?chore:=20=E6=8D=A2=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Controls/MyImage.vb | 2 +- Plain Craft Launcher 2/Modules/Base/ModNet.vb | 4 ++-- Plain Craft Launcher 2/Modules/ModSecret.vb | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Plain Craft Launcher 2/Controls/MyImage.vb b/Plain Craft Launcher 2/Controls/MyImage.vb index 122edd3..943dfd0 100644 --- a/Plain Craft Launcher 2/Controls/MyImage.vb +++ b/Plain Craft Launcher 2/Controls/MyImage.vb @@ -128,7 +128,7 @@ RetryStart: '下载 ActualSource = LoadingSource '显示加载中图片 TempDownloadingPath = TempPath & RandomInteger(0, 10000000) - NetDownload(Url, TempDownloadingPath, True) + NetDownload(Url, TempDownloadingPath, True, False) If Url <> Source AndAlso Url <> FallbackSource Then '已经更换了地址 File.Delete(TempDownloadingPath) diff --git a/Plain Craft Launcher 2/Modules/Base/ModNet.vb b/Plain Craft Launcher 2/Modules/Base/ModNet.vb index 9dc6705..7b59375 100644 --- a/Plain Craft Launcher 2/Modules/Base/ModNet.vb +++ b/Plain Craft Launcher 2/Modules/Base/ModNet.vb @@ -252,7 +252,7 @@ RequestFinished: ''' ''' 网络 Url。 ''' 下载的本地地址。 - Public Sub NetDownload(Url As String, LocalFile As String, Optional UseBrowserUserAgent As Boolean = False) + Public Sub NetDownload(Url As String, LocalFile As String, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) Log("[Net] 直接下载文件:" & Url) '初始化 @@ -268,7 +268,7 @@ RequestFinished: '下载 Using Client As New WebClient Try - SecretHeadersSign(Url, Client, UseBrowserUserAgent) + SecretHeadersSign(Url, Client, UseBrowserUserAgent, AddReferer) Client.DownloadFile(Url, LocalFile) Catch ex As Exception File.Delete(LocalFile) diff --git a/Plain Craft Launcher 2/Modules/ModSecret.vb b/Plain Craft Launcher 2/Modules/ModSecret.vb index 3b5197d..2315aa7 100644 --- a/Plain Craft Launcher 2/Modules/ModSecret.vb +++ b/Plain Craft Launcher 2/Modules/ModSecret.vb @@ -100,7 +100,7 @@ Friend Module ModSecret ''' ''' 设置 Headers 的 UA、Referer。 ''' - Friend Sub SecretHeadersSign(Url As String, ByRef Client As WebClient, Optional UseBrowserUserAgent As Boolean = False) + Friend Sub SecretHeadersSign(Url As String, ByRef Client As WebClient, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) If Url.Contains("baidupcs.com") OrElse Url.Contains("baidu.com") Then Client.Headers("User-Agent") = "LogStatistic" '#4951 ElseIf UseBrowserUserAgent Then @@ -108,7 +108,7 @@ Friend Module ModSecret Else Client.Headers("User-Agent") = "PCL2/" & VersionStandardCode End If - If Not Url.Contains("hdslb.com") Then + If AddReferer Then Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" End If Client.Headers("x-api-key") = CurseForgeAPIKey From b6cc6c10c35f15c81340f286426cf46c95efc6d0 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Fri, 8 Nov 2024 16:54:29 +0800 Subject: [PATCH 3/6] =?UTF-8?q?fix:=20=E4=B8=8D=E6=98=AF=E6=AF=8F=E4=B8=AA?= =?UTF-8?q?=E8=AF=B7=E6=B1=82=E9=83=BD=E9=9C=80=E8=A6=81=E7=9A=84=20Header?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Modules/ModSecret.vb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Plain Craft Launcher 2/Modules/ModSecret.vb b/Plain Craft Launcher 2/Modules/ModSecret.vb index 2315aa7..194e4d7 100644 --- a/Plain Craft Launcher 2/Modules/ModSecret.vb +++ b/Plain Craft Launcher 2/Modules/ModSecret.vb @@ -111,7 +111,9 @@ Friend Module ModSecret If AddReferer Then Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" End If - Client.Headers("x-api-key") = CurseForgeAPIKey + If Url.Contains("api.curseforge") Then + Client.Headers("x-api-key") = CurseForgeAPIKey + End If End Sub ''' ''' 设置 Headers 的 UA、Referer。 From 8abf4707a12229c6335e2b7d370080e51498da44 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Fri, 8 Nov 2024 17:05:21 +0800 Subject: [PATCH 4/6] =?UTF-8?q?chore:=20=E6=BC=8F=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=EF=BC=8C=E9=97=AE=E9=A2=98=E4=B8=8D=E5=A4=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Modules/ModSecret.vb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Plain Craft Launcher 2/Modules/ModSecret.vb b/Plain Craft Launcher 2/Modules/ModSecret.vb index 194e4d7..c00b32f 100644 --- a/Plain Craft Launcher 2/Modules/ModSecret.vb +++ b/Plain Craft Launcher 2/Modules/ModSecret.vb @@ -118,7 +118,7 @@ Friend Module ModSecret ''' ''' 设置 Headers 的 UA、Referer。 ''' - Friend Sub SecretHeadersSign(Url As String, ByRef Request As HttpWebRequest, Optional UseBrowserUserAgent As Boolean = False) + Friend Sub SecretHeadersSign(Url As String, ByRef Request As HttpWebRequest, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) If Url.Contains("baidupcs.com") OrElse Url.Contains("baidu.com") Then Request.UserAgent = "LogStatistic" '#4951 ElseIf UseBrowserUserAgent Then @@ -126,8 +126,12 @@ Friend Module ModSecret Else Request.UserAgent = "PCL2/" & VersionStandardCode End If - Request.Referer = "http://" & VersionCode & ".pcl2.open.server/" - Request.Headers("x-api-key") = CurseForgeAPIKey + If AddReferer Then + Request.Referer = "http://" & VersionCode & ".pcl2.open.server/" + End If + If Url.Contains("api.curseforge") Then + Request.Headers("x-api-key") = CurseForgeAPIKey + End If End Sub #End Region From 75cc86d2a2262fae5695fc7bbc1914b14364a122 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Fri, 8 Nov 2024 22:09:52 +0800 Subject: [PATCH 5/6] =?UTF-8?q?feat:=20=E8=87=AA=E5=B7=B1=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Controls/MyImage.vb | 4 +++- Plain Craft Launcher 2/Modules/Base/ModNet.vb | 4 ++-- Plain Craft Launcher 2/Modules/ModSecret.vb | 12 ++++-------- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/Plain Craft Launcher 2/Controls/MyImage.vb b/Plain Craft Launcher 2/Controls/MyImage.vb index 943dfd0..5329e03 100644 --- a/Plain Craft Launcher 2/Controls/MyImage.vb +++ b/Plain Craft Launcher 2/Controls/MyImage.vb @@ -128,7 +128,9 @@ RetryStart: '下载 ActualSource = LoadingSource '显示加载中图片 TempDownloadingPath = TempPath & RandomInteger(0, 10000000) - NetDownload(Url, TempDownloadingPath, True, False) + Using Client As New System.Net.WebClient + Client.DownloadFile(Url, TempDownloadingPath) + End Using If Url <> Source AndAlso Url <> FallbackSource Then '已经更换了地址 File.Delete(TempDownloadingPath) diff --git a/Plain Craft Launcher 2/Modules/Base/ModNet.vb b/Plain Craft Launcher 2/Modules/Base/ModNet.vb index 7b59375..9dc6705 100644 --- a/Plain Craft Launcher 2/Modules/Base/ModNet.vb +++ b/Plain Craft Launcher 2/Modules/Base/ModNet.vb @@ -252,7 +252,7 @@ RequestFinished: ''' ''' 网络 Url。 ''' 下载的本地地址。 - Public Sub NetDownload(Url As String, LocalFile As String, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) + Public Sub NetDownload(Url As String, LocalFile As String, Optional UseBrowserUserAgent As Boolean = False) Log("[Net] 直接下载文件:" & Url) '初始化 @@ -268,7 +268,7 @@ RequestFinished: '下载 Using Client As New WebClient Try - SecretHeadersSign(Url, Client, UseBrowserUserAgent, AddReferer) + SecretHeadersSign(Url, Client, UseBrowserUserAgent) Client.DownloadFile(Url, LocalFile) Catch ex As Exception File.Delete(LocalFile) diff --git a/Plain Craft Launcher 2/Modules/ModSecret.vb b/Plain Craft Launcher 2/Modules/ModSecret.vb index c00b32f..f5c2c24 100644 --- a/Plain Craft Launcher 2/Modules/ModSecret.vb +++ b/Plain Craft Launcher 2/Modules/ModSecret.vb @@ -100,7 +100,7 @@ Friend Module ModSecret ''' ''' 设置 Headers 的 UA、Referer。 ''' - Friend Sub SecretHeadersSign(Url As String, ByRef Client As WebClient, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) + Friend Sub SecretHeadersSign(Url As String, ByRef Client As WebClient, Optional UseBrowserUserAgent As Boolean = False) If Url.Contains("baidupcs.com") OrElse Url.Contains("baidu.com") Then Client.Headers("User-Agent") = "LogStatistic" '#4951 ElseIf UseBrowserUserAgent Then @@ -108,9 +108,7 @@ Friend Module ModSecret Else Client.Headers("User-Agent") = "PCL2/" & VersionStandardCode End If - If AddReferer Then - Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" - End If + Client.Headers("Referer") = "http://" & VersionCode & ".pcl2.open.server/" If Url.Contains("api.curseforge") Then Client.Headers("x-api-key") = CurseForgeAPIKey End If @@ -118,7 +116,7 @@ Friend Module ModSecret ''' ''' 设置 Headers 的 UA、Referer。 ''' - Friend Sub SecretHeadersSign(Url As String, ByRef Request As HttpWebRequest, Optional UseBrowserUserAgent As Boolean = False, Optional AddReferer As Boolean = True) + Friend Sub SecretHeadersSign(Url As String, ByRef Request As HttpWebRequest, Optional UseBrowserUserAgent As Boolean = False) If Url.Contains("baidupcs.com") OrElse Url.Contains("baidu.com") Then Request.UserAgent = "LogStatistic" '#4951 ElseIf UseBrowserUserAgent Then @@ -126,9 +124,7 @@ Friend Module ModSecret Else Request.UserAgent = "PCL2/" & VersionStandardCode End If - If AddReferer Then - Request.Referer = "http://" & VersionCode & ".pcl2.open.server/" - End If + Request.Referer = "http://" & VersionCode & ".pcl2.open.server/" If Url.Contains("api.curseforge") Then Request.Headers("x-api-key") = CurseForgeAPIKey End If From 9aecc1920af674610c38bcf9574ede2c9d383f28 Mon Sep 17 00:00:00 2001 From: tangge233 Date: Sat, 9 Nov 2024 09:43:04 +0800 Subject: [PATCH 6/6] =?UTF-8?q?fix:=20=E7=9B=AE=E5=BD=95=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E2=80=A6=E2=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Plain Craft Launcher 2/Controls/MyImage.vb | 1 + 1 file changed, 1 insertion(+) diff --git a/Plain Craft Launcher 2/Controls/MyImage.vb b/Plain Craft Launcher 2/Controls/MyImage.vb index 5329e03..0a950f7 100644 --- a/Plain Craft Launcher 2/Controls/MyImage.vb +++ b/Plain Craft Launcher 2/Controls/MyImage.vb @@ -128,6 +128,7 @@ RetryStart: '下载 ActualSource = LoadingSource '显示加载中图片 TempDownloadingPath = TempPath & RandomInteger(0, 10000000) + Directory.CreateDirectory(GetPathFromFullPath(TempPath)) Using Client As New System.Net.WebClient Client.DownloadFile(Url, TempDownloadingPath) End Using