如何使用 Invoke-WebRequest post 凭据提示 window
How to post credentials to prompt window with Invoke-WebRequest
我正在尝试构建一个登录站点并下载文件的 PowerShell 脚本。但是,与大多数网站一样,该网站没有表单中的用户名/密码字段。导航到该站点时,它会立即打开一个提示,如下所示:
Authentication Required Prompt
我的问题是如何将 Invoke-WebRequest 发送到 post 用户名和密码并登录该站点。传统上,我一直通过 ID 属性查找用户名和密码并设置它们的值,但在这个提示中这是不可能的。有任何想法吗?谢谢
Invoke-WebRequest 需要一个 -Credential
对象。
您可以这样做:
$cred = Get-Credential
Invoke-WebRequest -Uri 'https://mysite' -Credential $cred
或者如果你想在变量中输入密码(不安全),你可以:
$user = "user"
$pass = "password"
$securepasswd = ConvertTo-SecureString $pass -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($user, $securepasswd)
Invoke-WebRequest -Uri 'https://mysite' -Credential $cred
我正在尝试构建一个登录站点并下载文件的 PowerShell 脚本。但是,与大多数网站一样,该网站没有表单中的用户名/密码字段。导航到该站点时,它会立即打开一个提示,如下所示:
Authentication Required Prompt
我的问题是如何将 Invoke-WebRequest 发送到 post 用户名和密码并登录该站点。传统上,我一直通过 ID 属性查找用户名和密码并设置它们的值,但在这个提示中这是不可能的。有任何想法吗?谢谢
Invoke-WebRequest 需要一个 -Credential
对象。
您可以这样做:
$cred = Get-Credential
Invoke-WebRequest -Uri 'https://mysite' -Credential $cred
或者如果你想在变量中输入密码(不安全),你可以:
$user = "user"
$pass = "password"
$securepasswd = ConvertTo-SecureString $pass -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($user, $securepasswd)
Invoke-WebRequest -Uri 'https://mysite' -Credential $cred