본문 바로가기

원도우

PowerShell Invoke-WebRequest 명령어

728x90

PowerShell Invoke-WebRequest 명령어

Invoke-WebRequest 명령어는 PowerShell에서 웹 요청을 수행하는 데 사용됩니다. 해당 명령어를 사용하여 웹 페이지를 가져오거나 웹 서비스와 상호 작용할 수 있습니다.

 

아래는 Invoke-WebRequest 명령어의 기본적인 사용 방법과 일부 매개 변수에 대한 설명입니다.

Invoke-WebRequest -Uri <URL> [매개 변수]
  • -Uri: 요청을 보낼 URL을 지정합니다.
  • [매개 변수]: 추가적인 옵션을 설정할 수 있는 매개 변수입니다. 몇 가지 주요한 매개 변수는 아래와 같습니다.
    • -Method: 요청 메서드를 지정합니다. 기본값은 "GET"이며, "GET", "POST", "PUT", "DELETE" 등 다양한 메서드를 지정할 수 있습니다.
    • -Headers: 요청 헤더를 추가합니다. 배열 또는 해시 테이블 형태로 지정할 수 있습니다.
    • -Body: 요청 본문을 지정합니다. POST 또는 PUT 요청과 함께 사용됩니다.
    • -ContentType: 요청의 콘텐츠 유형(MIME 유형)을 지정합니다.
    • -OutFile: 응답을 파일로 저장합니다.
    • -Credential: 인증을 위해 사용할 자격 증명을 지정합니다.

위의 매개 변수는 일부이며, Invoke-WebRequest에는 더 많은 유용한 매개 변수가 있습니다.

Invoke-WebRequest 명령어의 자세한 내용과 추가 옵션을 확인하려면 PowerShell에서 다음 명령어를 실행하면 됩니다.

Get-Help Invoke-WebRequest -Full

Invoke-WebRequest Help

더보기
이름
    Invoke-WebRequest

구문
    Invoke-WebRequest [-Uri] <uri>  [<CommonParameters>]


매개 변수
    -Body <Object>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               true (ByValue)
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Certificate <X509Certificate>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -CertificateThumbprint <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -ContentType <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Credential <pscredential>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -DisableKeepAlive

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Headers <IDictionary>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -InFile <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -MaximumRedirection <int>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Method <WebRequestMethod>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -OutFile <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -PassThru

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Proxy <uri>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -ProxyCredential <pscredential>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -ProxyUseDefaultCredentials

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -SessionVariable <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      SV
        동적                     false

    -TimeoutSec <int>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -TransferEncoding <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -Uri <uri>

        필수 여부                        true
        위치                           0
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -UseBasicParsing

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -UseDefaultCredentials

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -UserAgent <string>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    -WebSession <WebRequestSession>

        필수 여부                        false
        위치                           명명됨
        파이프라인 입력 적용 여부               false
        매개 변수 집합 이름(모두)
        별칭                      없음
        동적                     false

    <CommonParameters>
        이 cmdlet은 Verbose, Debug, ErrorAction, ErrorVariable,
        WarningAction, WarningVariable, OutBuffer, PipelineVariable 및
        OutVariable과 같은 일반 매개 변수를 지원합니다. 자세한 내용은
        about_CommonParameters(https://go.microsoft.com/fwlink/?LinkID=113216)를 참조하십시오.


입력
    System.Object


출력
    System.Object

별칭
    iwr
    wget
    curl


설명
    Get-Help가 이 컴퓨터에서 이 cmdlet에 대한 도움말 파일을 찾을 수 없습니다. 일부 도움말만 표시합니다.
        -- 이 cmdlet을 포함하는 모듈에 대한 도움말 파일을 다운로드하여 설치하려면 Update-Help를 사용하십시오.
        -- 이 cmdlet에 대한 도움말 항목을 온라인으로 보려면 "Get-Help Invoke-WebRequest -Online"을 입력하거나
           https://go.microsoft.com/fwlink/?LinkID=217035(으)로 이동하십시오.

 

이 명령어는 Invoke-WebRequest 명령어에 대한 상세한 도움말을 표시합니다.

 

Invoke-WebRequest -Uri "http://127.0.0.1:8080"
> Invoke-WebRequest -Uri "http://127.0.0.1:8080"


StatusCode        : 200
StatusDescription : OK
Content           : <html><body><h1>It works!</h1></body></html>

RawContent        : HTTP/1.1 200 OK
                    Keep-Alive: timeout=5, max=100
                    Connection: Keep-Alive
                    Accept-Ranges: bytes
                    Content-Length: 45
                    Content-Type: text/html
                    Date: Thu, 13 Jul 2023 03:41:03 GMT
                    ETag: "2d-432a5e4a73a80...
Forms             : {}
Headers           : {[Keep-Alive, timeout=5, max=100], [Connection, Keep-Alive], [Accept-Ranges, bytes], [Content-Length, 45]...}
Images            : {}
InputFields       : {}
Links             : {}
ParsedHtml        : mshtml.HTMLDocumentClass
RawContentLength  : 45

 

Invoke-WebRequest -Uri "http://127.0.0.1:8080" -Method GET
> Invoke-WebRequest -Uri "http://127.0.0.1:8080" -Method GET


StatusCode        : 200
StatusDescription : OK
Content           : <html><body><h1>It works!</h1></body></html>

RawContent        : HTTP/1.1 200 OK
                    Keep-Alive: timeout=5, max=100
                    Connection: Keep-Alive
                    Accept-Ranges: bytes
                    Content-Length: 45
                    Content-Type: text/html
                    Date: Thu, 13 Jul 2023 03:47:28 GMT
                    ETag: "2d-432a5e4a73a80...
Forms             : {}
Headers           : {[Keep-Alive, timeout=5, max=100], [Connection, Keep-Alive], [Accept-Ranges, bytes], [Content-Length, 45]...}
Images            : {}
InputFields       : {}
Links             : {}
ParsedHtml        : mshtml.HTMLDocumentClass
RawContentLength  : 45

 

Invoke-WebRequest -Uri "http://127.0.0.1:8080" -Method TRACE
> Invoke-WebRequest -Uri "http://127.0.0.1:8080" -Method TRACE


StatusCode        : 200
StatusDescription : OK
Content           : {84, 82, 65, 67...}
RawContent        : HTTP/1.1 200 OK
                    Transfer-Encoding: chunked
                    Content-Type: message/http
                    Date: Thu, 13 Jul 2023 03:42:17 GMT
                    Server: Apache/2.4.57 (Unix)

                    TRACE / HTTP/1.1
                    User-Agent: Mozilla/5.0 (Windows NT; Win...
Headers           : {[Transfer-Encoding, chunked], [Content-Type, message/http], [Date, Thu, 13 Jul 2023 03:42:17 GMT], [Server, Apache/2.4.57 (Unix)
                    ]}
RawContentLength  : 156

 

728x90