如何在powershell中使用端口号访问我自己的localhost?

时间:2017-06-21 18:02:46

标签: powershell teamcity

我正在PowerShell中编写一个脚本,它将自动执行在我的localhost端口81上运行的应用程序中的某些操作。我需要通过PowerShell访问此应用程序的内容,以便我可以编辑并保存它。

我学到了很多关于PSSession的知识,但是我试图访问的应用程序是在我自己的机器上,而不是远程。有没有办法做到这一点?

编辑:

我试图联系的应用程序是TeamCity。我将其端口设置为81并访问应用程序,我只需在我的Web浏览器中键入http://localhost:81即可打开TeamCity的UI。

我通过应用程序本身学习了创建新项目及其构建的过程,但通过这样做,某些文件在某处创建,这就是我尝试以编程方式执行的操作:

nsn -ComputerName localhost -port 81 -Credential Get-Credential

我收到此错误:

  

nsn:[localhost]连接到远程服务器localhost失败了   以下错误消息:WinRM客户端无法处理   请求。它无法确定HTTP响应的内容类型   来自目标计算机。内容类型不存在或无效。   有关详细信息,请参阅about_Remote_Troubleshooting帮助   topic.At line:1 char:1   + nsn -ComputerName localhost -Port 81 -Credential Get-Credential   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~       + CategoryInfo:OpenError:(System.Manageme .... RemoteRunspace:RemoteRunspace)[New-PSSession],   PSRemotingTransportE xception       + FullyQualifiedErrorId:-2144108297,PSSessionOpenFailed

我也徒劳地尝试了set-location http://localhost:81,但得到的错误是路径不是驱动器(已经知道了)。

1 个答案:

答案 0 :(得分:0)

即使您正在尝试做的事情的背景缺乏,您也应该只使用“http://localhost:81”作为您的网址与实际的网址。 PSSession不会在这里适用,因为你(可能)没有远程处理(由于缺乏细节而完全无法判断)

编辑:感谢您更新答案。我之前没有使用过TeamCity,但我对Git和TFS非常熟悉,而且这些都不会让你通过WinRM连接。此外,您将无法通过WinRM连接到本地主机,因为这会否定Windows 远程管理的目的。如果您知道在输入New-PSSessionnsn)后尝试运行的命令,只需运行这些命令并跳过启动PSSession。

我很确定你需要用TeamCity做的唯一命令是git或git-like,它们不属于Powershell。否则,您将通过http / https而不是通过WinRM进行某种API调用。如果您正在尝试管理TeamCity所在的服务器,这是一个不同的故事,让我回到我不需要WinRM的观点,因为您不需要远程管理您已经在的服务器,您只需管理直接。