Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell调用WebRequest登录到网站不工作_Powershell - Fatal编程技术网

Powershell调用WebRequest登录到网站不工作

Powershell调用WebRequest登录到网站不工作,powershell,Powershell,我正在尝试编写一个Powershell脚本,用于登录和浏览网站。但是,当尝试发布登录凭据时,我收到了错误“在'/Webpostage'应用程序中出现服务器错误”。我对使用浏览器手动登录没有问题。我已经尝试对这两个请求使用相同的URI,以及使用Chrome中的开发者网络监视器来捕获帖子的实际URI(如下所示)。有什么想法吗 $Username = "username" $Password = "password" # GET Stamps.com Login page $R = Invoke-W

我正在尝试编写一个Powershell脚本,用于登录和浏览网站。但是,当尝试发布登录凭据时,我收到了错误“在'/Webpostage'应用程序中出现服务器错误”。我对使用浏览器手动登录没有问题。我已经尝试对这两个请求使用相同的URI,以及使用Chrome中的开发者网络监视器来捕获帖子的实际URI(如下所示)。有什么想法吗

$Username = "username"
$Password = "password"

# GET Stamps.com Login page
$R = Invoke-WebRequest https://print.stamps.com/webpostage/signin/default.aspx -SessionVariable StampsCom
$Form = $R.Forms[0]

# Fill in login credentials
$Form.Fields["UserNameTextBox"] = $Username
$Form.Fields["PasswordTextBox"] = $Password

# Login to Stamps.com
$R = Invoke-WebRequest -Uri ("https://print.stamps.com/webpostage/ajax/AuthenticateUser.aspx?LoginSource=SigninPage" + $Form.Action) -WebSession $StampsCom -Method POST -Body $Form.Fields

您将
$Form.Action
直接添加到Ajax URL,没有任何分隔符,这看起来很奇怪。我想您需要另一个查询字段,或者在这种情况下根本不需要
$Form.Action
?Hi@mklement0,即使我删除了“+$Form.Action”,我仍然会得到相同的错误。我只是按照这里的例子()。谢谢如果您遵循该示例,则必须使用
https://print.stamps.com'+$Form.Action