Загрузка файлов с русскими именами на web-сервер через Invoke-RestMethod
Требуется загрузить файлы Excel на web-сервер скриптом PowerShell, имитируя отправку их по одному из формы на web-странице. У нас PowerShell 7-й версии, Windows 10. По примеру из штатной документации написал скрипт:
$Uri = 'http://web.enterprise.local/api/uploadnew'
Get-ChildItem "C:\to_upload" -Filter *.xlsx |
Foreach-Object {
$File = $_.FullName
$Form = @{
f = Get-Item -Path $File
}
$Result = Invoke-RestMethod -Uri $Uri -Method Post -Form $Form -StatusCodeVariable "httpStatus" -SkipHttpErrorCheck
Всё работает правильно, когда в имени файла только латинские символы. Но если передаётся файл, названный по-русски, то его имя web-сервер воспринимает искаженно, и видит что-то вроде такого:
0LjRj(..пропущено..)xzeA==?=
Как заставить правильно кодировать имя файла?