From 9d7a9f81f74f522e84459e3fb92da942061633ee Mon Sep 17 00:00:00 2001 From: James Brundage <@github.com> Date: Sat, 4 May 2024 13:03:44 -0700 Subject: [PATCH] feat: HTtpListenerRequest.get_Boundary ( Fixes #1114 ) Also, simplifying directory tree --- .../{HttpListenerRequest => Request}/Alias.psd1 | 0 .../PSTypename.txt | 0 .../get_Body.ps1 | 0 Types/HttpListener/Request/get_Boundary.ps1 | 16 ++++++++++++++++ .../get_HostName.ps1 | 0 .../get_IPAddress.ps1 | 0 .../get_QueryParameter.ps1 | 0 .../get_Subdomain.ps1 | 0 8 files changed, 16 insertions(+) rename Types/HttpListener/{HttpListenerRequest => Request}/Alias.psd1 (100%) rename Types/HttpListener/{HttpListenerRequest => Request}/PSTypename.txt (100%) rename Types/HttpListener/{HttpListenerRequest => Request}/get_Body.ps1 (100%) create mode 100644 Types/HttpListener/Request/get_Boundary.ps1 rename Types/HttpListener/{HttpListenerRequest => Request}/get_HostName.ps1 (100%) rename Types/HttpListener/{HttpListenerRequest => Request}/get_IPAddress.ps1 (100%) rename Types/HttpListener/{HttpListenerRequest => Request}/get_QueryParameter.ps1 (100%) rename Types/HttpListener/{HttpListenerRequest => Request}/get_Subdomain.ps1 (100%) diff --git a/Types/HttpListener/HttpListenerRequest/Alias.psd1 b/Types/HttpListener/Request/Alias.psd1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/Alias.psd1 rename to Types/HttpListener/Request/Alias.psd1 diff --git a/Types/HttpListener/HttpListenerRequest/PSTypename.txt b/Types/HttpListener/Request/PSTypename.txt similarity index 100% rename from Types/HttpListener/HttpListenerRequest/PSTypename.txt rename to Types/HttpListener/Request/PSTypename.txt diff --git a/Types/HttpListener/HttpListenerRequest/get_Body.ps1 b/Types/HttpListener/Request/get_Body.ps1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/get_Body.ps1 rename to Types/HttpListener/Request/get_Body.ps1 diff --git a/Types/HttpListener/Request/get_Boundary.ps1 b/Types/HttpListener/Request/get_Boundary.ps1 new file mode 100644 index 000000000..f0ce66f74 --- /dev/null +++ b/Types/HttpListener/Request/get_Boundary.ps1 @@ -0,0 +1,16 @@ +<# +.SYNOPSIS + Gets the boundary for a multipart request. +.DESCRIPTION + Extracts the boundary from the Content-Type header of a multipart request. + + This boundary is used to separate the different parts of the request. +.LINK + https://www.w3.org/Protocols/rfc1341/7_2_Multipart.html +#> + +if ($this.ContentType -match 'multipart.+?;') { + @(@($this.ContentType -split ';')[1] -split '=')[1] +} else { + "" +} diff --git a/Types/HttpListener/HttpListenerRequest/get_HostName.ps1 b/Types/HttpListener/Request/get_HostName.ps1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/get_HostName.ps1 rename to Types/HttpListener/Request/get_HostName.ps1 diff --git a/Types/HttpListener/HttpListenerRequest/get_IPAddress.ps1 b/Types/HttpListener/Request/get_IPAddress.ps1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/get_IPAddress.ps1 rename to Types/HttpListener/Request/get_IPAddress.ps1 diff --git a/Types/HttpListener/HttpListenerRequest/get_QueryParameter.ps1 b/Types/HttpListener/Request/get_QueryParameter.ps1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/get_QueryParameter.ps1 rename to Types/HttpListener/Request/get_QueryParameter.ps1 diff --git a/Types/HttpListener/HttpListenerRequest/get_Subdomain.ps1 b/Types/HttpListener/Request/get_Subdomain.ps1 similarity index 100% rename from Types/HttpListener/HttpListenerRequest/get_Subdomain.ps1 rename to Types/HttpListener/Request/get_Subdomain.ps1