[WinHttp] WinHttpRequest > vb.net

본문 바로가기

vb.net

[WinHttp] [WinHttp] WinHttpRequest

회원사진
하나를하더라도최선을
2022-08-19 07:57 2,937 0

본문



어셈블리 Interop.WinHttp, Version=5.1.0.0

<Guid("016FE2EC-B2C8-45F8-B23B-39E53A75396B")> <TypeLibTypeAttribute(4288)> Public Interface IWinHttpRequest <DispId(6)> Property [Option]([Option] As WinHttpRequestOption) As Object <DispId(10)> ReadOnly Property ResponseBody As Object <DispId(9)> ReadOnly Property ResponseText As String <DispId(8)> ReadOnly Property StatusText As String <DispId(7)> ReadOnly Property Status As Integer <DispId(11)> ReadOnly Property ResponseStream As Object <DispId(18)> Sub SetAutoLogonPolicy(AutoLogonPolicy As WinHttpRequestAutoLogonPolicy) <DispId(17)> Sub SetClientCertificate(ClientCertificate As String) <DispId(16)> Sub SetTimeouts(ResolveTimeout As Integer, ConnectTimeout As Integer, SendTimeout As Integer, ReceiveTimeout As Integer) <DispId(12)> Sub Abort() <DispId(5)> Sub Send(Optional Body As Object = Nothing) <DispId(2)> Sub SetRequestHeader(Header As String, Value As String) <DispId(1)> Sub Open(Method As String, Url As String, Optional Async As Object = Nothing) <DispId(14)> Sub SetCredentials(UserName As String, Password As String, <ComAliasName("WinHttp.HTTPREQUEST_SETCREDENTIALS_FLAGS")> Flags As Integer) <DispId(13)> Sub SetProxy(<ComAliasName("WinHttp.HTTPREQUEST_PROXY_SETTING")> ProxySetting As Integer, Optional ProxyServer As Object = Nothing, Optional BypassList As Object = Nothing) <DispId(4)> Function GetAllResponseHeaders() As String <DispId(3)> Function GetResponseHeader(Header As String) As String <DispId(15)> Function WaitForResponse(Optional Timeout As Object = Nothing) As Boolean End Interface
<Guid("12782009-FE90-4877-9730-E5E183669B19")> Public Enum WinHttpRequestOption WinHttpRequestOption_UserAgentString = 0 WinHttpRequestOption_URL = 1 WinHttpRequestOption_URLCodePage = 2 WinHttpRequestOption_EscapePercentInURL = 3 WinHttpRequestOption_SslErrorIgnoreFlags = 4 WinHttpRequestOption_SelectCertificate = 5 WinHttpRequestOption_EnableRedirects = 6 WinHttpRequestOption_UrlEscapeDisable = 7 WinHttpRequestOption_UrlEscapeDisableQuery = 8 WinHttpRequestOption_SecureProtocols = 9 WinHttpRequestOption_EnableTracing = 10 WinHttpRequestOption_RevertImpersonationOverSsl = 11 WinHttpRequestOption_EnableHttpsToHttpRedirects = 12 WinHttpRequestOption_EnablePassportAuthentication = 13 WinHttpRequestOption_MaxAutomaticRedirects = 14 WinHttpRequestOption_MaxResponseHeaderSize = 15 WinHttpRequestOption_MaxResponseDrainSize = 16 WinHttpRequestOption_EnableHttp1_1 = 17 WinHttpRequestOption_EnableCertificateRevocationCheck = 18 WinHttpRequestOption_RejectUserpwd = 19 End Enum

SetTimeOuts:

wihttp 타임아웃을 설정합니다.

4개의 인수 모드 밀리 세컨드(MS) 단위입니다.

ex:) WinHttp..SetTimeouts(3000, 3000, 3000, 3000)

SetRequestHeader:

헤더 값을 변경합니다.

ex:) WinHttp.SetRequestHeader([헤더 이름], [헤더 값])

Send :

Open 메서드로 지정한 URL과 통신을 시작합니다.

옵션이지만 POST와 같은 경우 인자 값을 넣어 주여야 함

WaitForResponse:

Open 메서드에서 비동기 모드로 설정했을 시 작동하며

데이터를 다 받아올 때까지 기다리는 역할을 함.

SetProxy:

Winhttp 통신에 사용할 프락시 서버를 설정합니다.

ex:) WinHttp.SetProxy([옵션], [프록시서버 주소:포트], [바이패스 리스트])

옵션:)

HTTPREQUEST_PROXYSETTING_DEFAULT = 0

HTTPREQUEST_PROXYSETTING_PRECONFIG = 0

HTTPREQUEST_PROXYSETTING_DIRECT = 1

HTTPREQUEST_PROXYSETTING_PROXY = 2

ResponseText:

반환된 텍스트를 가져옵니다.

Abort:

진행 중인 작업을 중단할 때 쓰입니다.

GetResponseHeader:

지정한 반환된 헤더를 가져옵니다.

만약 헤더 정보가 없으면 에러를 출력합니다.

GetAllResponseHeader:

반환된 모든 헤더를 가져옵니다.

※ 이벤트 프러시저를 사용하러 면

WinHttp가 WithEvents로 선언되어 있어야 합니다. ※

Private Sub WinHttp_OnError(ByVal ErrorNumber As Long, ByVal ErrorDescription As String)

' Winhttp 통신 중 에러가 발생할 경우 발생합니다.

ErrorNumber : 에러 번호, ErrorDescription : 에러 String

Private Sub WinHttp_OnResponseDataAvailable(Data() As Byte)

' 데이터를 받을 때 발생합니다.

' Data() : 받은 데이터

Private Sub WinHttp_OnResponseFinished()

' 통신이 끝날 경우 발생합니다.

Private Sub WinHttp_OnResponseStart(ByVal Status As Long, ByVal ContentType As String)

' 통신이 시작될 경우 발생합니다.

Status : 상태, ContnetType : 콘텐츠 타입

댓글목록0

등록된 댓글이 없습니다.
게시판 전체검색