到目前为止的故事:我正在编写一个“创建新用户”PoSh 脚本,除此之外,我还需要它:
- 创建WebServiceProxy对象作为变量(因为我们使用的 Cisco UCM 利用 SOAP 请求与其交互)
- 创建用户后,在我们的 Intranet 网站上拉一个 PHP 脚本以将其与 Active Directory 同步,最简单的方法是 AFAIR Invoke-WebRequest commandlet。
所以现在它看起来像这样:
$MyCreds = Get-Credential -Message "Specify your password" -Username $($env:username) $AXL = New-WebServiceProxy -Uri $("\\server\smbshare\AXLAPI.wsdl") -Credential $MyCreds ... Invoke-WebRequest -Uri "https://intranet.company.com/ad_sync.php" - 方法获取
我发现在创建 WebServiceProxy 对象之前调用 WebRequest 成功,但是在任何时候调用 WebRequest失败并出现以下错误:
Invoke-WebRequest:底层连接已关闭:发送时发生意外错误。
我对.NET、类和此类东西没有经验,所以也许我的假设是错误的,但现在我正在尝试(并且失败)找出这种行为是否是预期的?基本逻辑表明,创建变量不应该影响调用简单请求,但它仍然会影响。因此,我将不胜感激阅读链接,该链接解释了它的工作原理。
还有一个主要问题 - 是否有解决方案或至少是一种解决方法?我的理论建议就像删除 WebServiceProxy 对象(不知道如何)或使用其他方法来提取 PHP 脚本。
一些附加信息:
- Powershell 版本:4.0
- WebServiceProxy 部分由同事提供,所以我不太熟悉,只需将所有内容组合在一个脚本中即可
- 由于脚本逻辑,我们无法更改命令的顺序,必须按此特定顺序完成
对此的任何建议都非常感谢,谢谢!