간단하게 설명하자면,

로그인하면서 받아온 ResponseHeader의 Set-Cookie 값을 어딘가 저장해두고 계속 꺼내쓰면 됨.


Option Explicit

'매크로 실행함수
Sub Module1Click()
    Dim WinHTTP As Object
    Dim Cookie As String

    Set WinHTTP = CreateObject("WinHTTP.WinHTTPrequest.5.1")

    '로그인
    WinHTTP.Open "POST", "https://DOMAIN.com/login.php", False
    WinHTTP.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
    WinHTTP.Send "userid=USERID&userpw=USERPW"

    '로그인 성공시 받아온 쿠키값 저장
    Cookie = WinHTTP.GetResponseHeader("Set-Cookie")

    '로그인 인증권한이 필요한 페이지 요청
    WinHTTP.Open "POST", "http://DOMAIN.com/get_secret_data.php", False
    WinHTTP.SetRequestHeader "Cookie", Cookie
    WinHTTP.Send

    '출력
    Debug.Print WinHTTP.ResponseText

    WinHTTP = Nothing
End Sub









Posted by bloodguy
,