将Curl请求转换为powershell

时间:2017-08-07 19:47:20

标签: powershell curl

我试图在power shell中传递复制此cURL请求的图像

curl -u user:apikey -F ‘data=@1234.jpg’
https://denton.gradesfirst.com/api/users/pictures

我认证很好,但不知道在powershell中复制‘data=@1234.jpg’,以便其他系统知道图片的位置。

$username = "username"
$password = "apikey"
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $username,$password)))



Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -uri "https://test.test.test.com/api/users/pictures" -Method Put -InFile "C:\Users\username\Downloads\pic-2017\210569.jpg" -ContentType 'image/jpg'

1 个答案:

答案 0 :(得分:0)

这是一个常见的错误,你必须使用invoke-restmethod。

这对你有用。如果您需要以非交互方式输入信用,只需将它们保存到文件中,然后将它们拉入相同的$ cred变量 - 命令保持不变。

$creds = Get-Credential
$url = "https://denton.gradesfirst.com/api/users/pictures"
Invoke-WebRequest -Credential $creds -Method Post -Uri $url -ContentType "application/x-www-form-urlencoded" -InFile "1234.jpg"