Powershell을 사용하여 5.0.10586.117 로그인 할 양식이 포함 된 특정 웹 사이트 (IIS 8.5)를 요청하고 싶습니다. 여기에 특정 코드는 다음과 같습니다Powershell-command Invoke-webrequest 로그인 양식이 응답하지 않는다
$Url = Invoke-Webrequest -Uri "https://not-work/hello.aspx" -SessionVariable SesVar
$UrlForm = $Url.Forms[0]
그래서 파워 쉘 중단을하고 결코만큼 내가 수동으로 방해하지 않는 한 아무 것도 반환합니다.
VERBOSE: Get https://not-work/hello.aspx with 0-byte payload.
작동 구글 크롬 55.0.2883.87에서 동일한 웹 사이트를 실행 :
$Url = Invoke-Webrequest -Verbose -Uri "https://not-work/hello.aspx" -SessionVariable SesVar
나는 다음과 같은 오류를 볼 수 있습니다 사용
. 이전 버전의 응용 프로그램 코드를 다른 (이전 버전의 IIS와는 달리) Powershell에서도 사용할 수 있습니다.
이 문제가 Powershell의 bug과 관련이 있다면 궁금합니다.
참고 : 실패
$Url = Invoke-Webrequest -UseBasicParsing -Verbose -Uri "https://not-work/hello.aspx" -SessionVariable SesVar
를 사용하더라도. 완성도를 위해서
, 도 (크롬처럼) HTTP 상태 코드 (200)를 제공하지만, 작업 버전에 비해 약간의 차이가 말림 :비 운영중인 웹 사이트
은C:\Tools\curl>curl -k https://not-work/hello.aspx -I HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 12671
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/8.5 X-AspNet-Version: 4.0.30319
Set-Cookie: __AntiXsrfToken=d438e79fe7004ad09d950a3b8b4e507d; path=/; HttpOnly
Set-Cookie: .ASPXAUTH=; expires=Mon, 11-Oct-1999 22:00:00 GMT; path=/; HttpOnly
X-Powered-By: ASP.NET
Date: Thu, 12 Jan 2017 13:57:33 GMT
전문 웹 사이트
C:\Tools\curl>curl -k https://works-well/hello.aspx -I HTTP/1.1 200 OK
Cache-Control: private Content-Length: 12306 Content-Type: text/html; charset=utf-8
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options: nosniff
Server: WWW Server/1.1 X-XSS-Protection: 1; mode=block
Set-Cookie: __AntiXsrfToken=6142de1c5d474da780530da39fea033f; path=/;HttpOnly; Secure
Date: Thu, 12 Jan 2017 15:56:47 GMT
그런데 Internet Explorer (IE) 11.0.9600.18537에서는 이미지와 같은 객체가로드되지 않습니다. Powershell은 IE DLL을 사용하여 "두포 모드"에서 작동합니다. "모래 시계"는 탭 옆에 영구적으로 실행 중입니다. 요구 된 URI
다시 질문 :이 문제는 Powershell에서 bug과 관련이 있습니까? 아니면 다른 것이 될 수 있습니까?
예, "내"웹 사이트에 FORMS 옵션이 있음을 확인할 수 있습니다. – Joey