Types/OpenPackage.Part/ReadFormData.ps1
|
<# .SYNOPSIS Reads Part Content as Form Data .DESCRIPTION Reads OpenPackage Part Content as Form Data #> [Reflection.AssemblyMetadata( 'ContentTypePattern', '[/\+]x-www-form-urlencoded' )] param( # An optional input object # If provided, content will be read from this object. # If not provided, content will be read from this part. [Alias('Input')] [PSObject]$InputObject = $null, # Any options used to read the data. [Alias('Options')] [Collections.IDictionary]$Option = [Ordered]@{} ) if (-not $this.ReadText) { return } $partText = $this.ReadText($InputObject, $Option) $formData = [Web.HttpUtility]::ParseQueryString($partText) $formDataObject = [Ordered]@{} foreach ($key in $formData.Keys) { if ($null -eq $formDataObject[$key]) { $formDataObject[$key] = $formData[$key] } else { $formDataObject[$key] = @($formDataObject[$key]) + $formData[$key] } } return $formDataObject |