请帮助 我有一个网站 我有时候会停止iis的问题 请帮助您使用此代码 条件不起作用 我想这样做
如果你转到下一页 成功 其他 重启iis
$url = "https://alatheirvas.com:8443/Login.aspx"
$username="hgeyf4125"
$password="123456"
$ie = New-Object -com internetexplorer.application;
$ie.visible = $true;
$ie.navigate($url);
while ($ie.Busy -eq $true)
{
Start-Sleep 1;
}
$ie.Document.getElementById("Login2_UserName").value = $username
$ie.Document.getElementByID("Login2_Password").value=$password
$ie.Document.getElementById("Login2_LoginButton").Click();
while($ie.busy) {sleep 1}
前面的步骤是正确的
完成此任务的下一步是什么
如果已登录并转到下一页 成功
否则 重启iis
if ($url = "https://alatheirvas.com:8443/agent/") {
"success"
} else {
iisreset
}
我希望以任何可能的方式实现这一目标
答案 0 :(得分:0)
解决此问题的另一种方法是使用 Invoke-WebRequest 。你可以
$web=Invoke-WebRequest https://servicios.at.uy/ -SessionVariable sessionWeb
$Form = $web.Forms[0] #Notes below this code block
$Form.Fields["Login2_UserName"]="hgeyf4125"
$Form.Fields["Login2_Password"]="123456"
$status = Invoke-WebRequest -Uri ("https://servicios.at.uy/" + $Form.Action) -WebSession $sessionWeb -Method POST -Body $Form.Fields
if ($status.StatusDescription -ge "OK") {
Write-host "Success"
} else {
iisreset
}
之前的代码块会在登录过程后检查状态,如果是" OK",那就没问题了。否则,请重新启动IIS。
备注:强> 要验证表单[0]对应于您网站中的正确表单,您可以运行以下命令:
$web = Invoke-WebRequest https://servicios.at.uy/
$Form = $web.Forms[0]
$Form.fields
在列中,Key将显示登录元素的名称(" Login2_UserName"" Login2_Password")。