我们有一个上传图片到服务器的PHP网站,上传的是简单的JPG文件并且命名正确。问题在于有时我们需要一次上传几百个图片,但PHP只接受一个文件,然后重命名并上传。我在PS中完成了文件操作,但上传失败。
就上传相关的PHP部分(据我所知)看起来像这样:
就上传相关的PHP部分(据我所知)看起来像这样:
<form name='' id='' enctype='multipart/form-data' method='POST' action='/picture_upload.php' target='_self' onsubmit="default_on_submit(event)">
我在Google上查找相关主题,并在此处得到以下内容:$uri = "http://example.com/"
$pwd = ConvertTo-SecureString 'MyPassword' -AsPlainText -Force
$cred = New-Object Management.Automation.PSCredential ('myuser', $pwd)
$contentType = "multipart/form-data"
$body = @{
"FileName" = Get-Content($uploadPath) -Raw
}
Invoke-WebRequest -Uri $uri -Method Post -ContentType $contentType -Body $body
我已经检查过$uploadPath
,它是正确的C:\Folder\file.jpg
。我使用我登录到站点的凭据,在GUI上传这些图片。
我尝试在POST和PUT之间切换,但没有改变。
将http://example.com
替换为http://example.com/file.jpg
也没有任何区别。不确定使用POST的正确方式。
我们公司有McAffe Web网关,但我正在使用可以绕过它的用户运行脚本,所以这不是导致问题的原因。
当前收到的错误消息是:"Invoke-WebRequest:底层连接被关闭:接收时发生了意外错误。"
非常感谢任何帮助!如果这个问题已经得到解决而我只是错过了一个条目,请原谅!
P.S. 我也尝试了这个 - Powershell脚本将本地系统的日志文件上传到http URL,它返回Exception calling "UploadFile" with "3" argument(s): "An exception occurred during a WebClient request."