Invoke-WebRequest登录网站
Invoke-WebRequest login to web site
我正在尝试使用 Powershells Invoke-WebRequest Cmdlet 登录网站。这是我的代码:
$login = Invoke-WebRequest -Uri https://www.franklinamerican.com/ext/general?npage=home -SessionVariable franklin
$form = $login.Forms[0]
$form.Fields["userName"] = "username123"
$form.Fields["brokerPassword"] = "password456"
$login = Invoke-WebRequest -Uri https://www.franklinamerican.com/ext/general?npage=home -WebSession $franklin -Method POST -Body $form.Fields
$login.StatusDescription
无论凭据是否正确,我都会从 StatusDescription 收到 'OK',这看起来很奇怪且令人困惑。我在这里错过了什么?任何帮助将非常感激。谢谢大家
编辑:调用 $login.InputFields
的结果
的图片
您在解释结果时遗漏的是 $login.StatusDescription
指的是 HTTP 状态 ,在这种情况下可能是 HTTP 状态代码 200,转换为"OK".
这与网站的(基于表单的)身份验证无关。您缺少表单所需的内容。查看 $login.Content
并查看网站是否在 HTML 中给了您更具体的错误,您可以使用。
我正在尝试使用 Powershells Invoke-WebRequest Cmdlet 登录网站。这是我的代码:
$login = Invoke-WebRequest -Uri https://www.franklinamerican.com/ext/general?npage=home -SessionVariable franklin
$form = $login.Forms[0]
$form.Fields["userName"] = "username123"
$form.Fields["brokerPassword"] = "password456"
$login = Invoke-WebRequest -Uri https://www.franklinamerican.com/ext/general?npage=home -WebSession $franklin -Method POST -Body $form.Fields
$login.StatusDescription
无论凭据是否正确,我都会从 StatusDescription 收到 'OK',这看起来很奇怪且令人困惑。我在这里错过了什么?任何帮助将非常感激。谢谢大家
编辑:调用 $login.InputFields
的结果 的图片您在解释结果时遗漏的是 $login.StatusDescription
指的是 HTTP 状态 ,在这种情况下可能是 HTTP 状态代码 200,转换为"OK".
这与网站的(基于表单的)身份验证无关。您缺少表单所需的内容。查看 $login.Content
并查看网站是否在 HTML 中给了您更具体的错误,您可以使用。