2016-07-02 194 views
2

私たちはサーバーに画像をアップロードするphpサイトを持っています。これは簡単なjpgファイルで、正確な名前が付けられています。問題は、一度に何百ものものをアップロードする必要があることですが、PHPは一度に1つしか受け付けず、名前を変更してアップロードします。 PSでのファイル操作はかなりうまく行っていますが、アップロードに失敗しています。ここ<form name='' id='' enctype='multipart/form-data' method='POST' action='/picture_upload.php' target='_self' onsubmit="default_on_submit(event)">Powershell経由でHTTPにファイルをアップロードする

私はGoogleのを確認し、関連するトピックだけでなく、これに着い:

PHP(私の知る限り)をアップロードするために関連する部分は、このようになります

$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.comhttp://example.com/file.jpgに置き換えても差はありません。確かに、POSTを使う正しい方法です。

会社にはMcAffe Webゲートウェイがありますが、私はそれをバイパスするユーザーでスクリプトを実行していますので、この原因ではありません。

現在のエラーメッセージは次のとおりです。 "Invoke-WebRequest:基になる接続が閉じられました:受信時に予期しないエラーが発生しました。"

ご協力いただければ幸いです!申し訳ありませんが、これは既に解決されていると私は単にエントリを逃した!

P.S.

Invoke-RestMethod -Uri $uri -Method Post -InFile $uploadPath -UseDefaultCredentials 

鉱山は、ウィンドウを使用するために必要な:Powershell script to Upload log file from local system to http URL、とあなたはおそらくもう答えを必要としないので、それは、今年後半に

答えて

4

Exception calling "UploadFile" with "3" argument(s): "An exception occurred during a WebClient request."を返しますが、どのような私のために働いたことだった - 私はまた、これを試してみました現在ログインしているユーザー... From this other answerとしてauthを使用すると、場合によっては-credを使用できるように見え、他の場合はAuthorizationヘッダーを作成する必要があります。

関連する問題