HttpSendRequestA 함수(wininet.h)
지정된 요청을 HTTP 서버로 보내 호출자가 일반적으로 HttpSendRequestEx에 전달되는 것 이상으로 추가 데이터를 보낼 수 있도록 합니다.
구문
BOOL HttpSendRequestA(
[in] HINTERNET hRequest,
[in] LPCSTR lpszHeaders,
[in] DWORD dwHeadersLength,
[in] LPVOID lpOptional,
[in] DWORD dwOptionalLength
);
매개 변수
[in] hRequest
HttpOpenRequest 함수에 대한 호출에서 반환되는 핸들입니다.
[in] lpszHeaders
요청에 추가할 추가 헤더를 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 추가할 추가 헤더가 없는 경우 이 매개 변수는 NULL 일 수 있습니다.
[in] dwHeadersLength
추가 헤더의 크기( TCHAR)입니다. 이 매개 변수가 -1L이고 lpszHeaders 가 NULL이 아닌 경우 함수는 lpszHeaders 가 ASCIIZ(0-terminated)이고 길이가 계산된다고 가정합니다. 자세한 내용은 설명을 참조하세요.
[in] lpOptional
요청 헤더 바로 다음에 보낼 선택적 데이터가 포함된 버퍼에 대한 포인터입니다. 이 매개 변수는 일반적으로 POST 및 PUT 작업에 사용됩니다. 선택적 데이터는 서버에 게시되는 리소스 또는 정보일 수 있습니다. 보낼 선택적 데이터가 없는 경우 이 매개 변수는 NULL 일 수 있습니다.
[in] dwOptionalLength
선택적 데이터의 크기(바이트)입니다. 보낼 선택적 데이터가 없는 경우 이 매개 변수는 0일 수 있습니다.
반환 값
성공하면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
HttpSendRequest 는 지정된 요청을 HTTP 서버로 보내고 클라이언트가 요청과 함께 보낼 추가 헤더를 지정할 수 있도록 합니다.
또한 이 함수를 사용하면 클라이언트가 요청 헤더 바로 다음에 HTTP 서버로 보낼 선택적 데이터를 지정할 수 있습니다. 이 기능은 일반적으로 PUT 및 POST와 같은 "쓰기" 작업에 사용됩니다.
요청이 전송되면 HTTP 서버의 상태 코드 및 응답 헤더를 읽습니다. 이러한 헤더는 내부적으로 유지 관리되며 HttpQueryInfo 함수를 통해 클라이언트 애플리케이션에서 사용할 수 있습니다.
애플리케이션은 HttpSendRequest에 대한 여러 호출에서 동일한 HTTP 요청 핸들을 사용할 수 있지만 애플리케이션은 함수를 다시 호출하기 전에 이전 호출에서 반환된 모든 데이터를 읽어야 합니다.
오프라인 모드에서 HttpSendRequest 는 리소스가 인터넷 캐시에 없는 경우 ERROR_FILE_NOT_FOUND 반환합니다.
HttpSendRequest에는 HttpSendRequestA(ANSI 빌드와 함께 사용됨) 및 HttpSendRequestW(유니코드 빌드와 함께 사용)의 두 가지 버전이 있습니다. dwHeadersLength가 -1L이고 lpszHeaders가 NULL이 아닌 경우 다음이 발생합니다. HttpSendRequestA가 호출되면 함수는 lpszHeaders가 ASCIIZ(0-terminated)이고 길이가 계산된다고 가정합니다. HttpSendRequestW가 호출되면 함수는 ERROR_INVALID_PARAMETER 함께 실패합니다.
참고
wininet.h 헤더는 HTTPSendRequest를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | wininet.h |
라이브러리 | Wininet.lib |
DLL | Wininet.dll |