다음을 통해 공유


HttpAddUrl 함수(http.h)

HttpAddUrl 함수는 지정된 URL을 등록하여 일치하는 요청이 지정된 HTTP Server API 요청 큐로 라우팅되도록 합니다. 애플리케이션은 HttpAddUrl에 대한 반복 호출을 사용하여 단일 요청 큐에 여러 URL을 등록할 수 있습니다. HTTP Server API가 등록된 URL에 대한 요청 URL과 일치하는 방법에 대한 자세한 내용은 UrlPrefix 문자열을 참조하세요.

HTTP Server API 버전 2.0부터 애플리케이션은 HttpAddUrlToUrlGroup 을 호출하여 URL을 등록해야 합니다. HttpAddUrl을 사용하면 안 됩니다.

구문

HTTPAPI_LINKAGE ULONG HttpAddUrl(
  [in] HANDLE RequestQueueHandle,
  [in] PCWSTR FullyQualifiedUrl,
       PVOID  Reserved
);

매개 변수

[in] RequestQueueHandle

지정된 URL에 대한 요청을 라우팅할 요청 큐에 대한 핸들입니다. 요청 큐가 생성되고 HttpCreateRequestQueue 함수에 대한 호출에서 해당 핸들이 반환됩니다.

WINDOWS Server 2003 SP1 및 Windows XP SP2: 요청 큐에 대한 핸들은 HttpCreateHttpHandle 함수에 의해 만들어집니다.

[in] FullyQualifiedUrl

등록할 URL을 식별하는 적절한 형식의 UrlPrefix 문자열 을 포함하는 유니코드 문자열에 대한 포인터입니다.

Reserved

예약; 은 NULL이어야 합니다.

반환 값

함수가 성공하면 반환 값이 NO_ERROR.

함수가 실패하면 반환 값은 다음 오류 코드 중 하나입니다.

의미
ERROR_ACCESS_DENIED
호출하는 애플리케이션에는 URL을 등록할 수 있는 권한이 없습니다.
ERROR_DLL_INIT_FAILED
호출 애플리케이션이 이 함수를 호출하기 전에 HttpInitialize를 호출하지 않았습니다.
ERROR_INVALID_PARAMETER
매개 변수 중 하나가 잘못되었습니다.
ERROR_ALREADY_EXISTS
지정된 UrlPrefix가 기존 등록과 충돌합니다.
ERROR_NOT_ENOUGH_MEMORY
작업을 완료할 리소스가 부족합니다.
기타
WinError.h에 정의된 시스템 오류 코드 입니다.

설명

UrlPrefix 문자열 항목에 설명된 대로 등록할 UrlPrefix의 스키마 사양은 소문자 "http" 또는 소문자 "https"여야 합니다. 다른 부분 문자열은 유효하지 않습니다.

또한 동일한 포트에 서로 다른 스키마가 있는 URL을 등록할 수 없습니다. 즉, "http" 및 "https" 체계는 포트에서 공존할 수 없습니다.

또한 HttpAddUrl 은 문자열이 올바른 형식인 한 전달된 모든 UrlPrefix를 등록합니다. 지정된 URL 네임스페이스의 존재, 접근성, 소유권 또는 기타 특성에 대한 유효성 검사는 애플리케이션에서 처리해야 합니다.

HttpAddUrl에서 수행한 등록의 결과로 할당된 리소스를 해제하려면 애플리케이션이 관련된 네임스페이스로 완료되면 HttpRemoveUrl 함수를 일치하도록 호출합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista, WINDOWS XP SP2 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 http.h
라이브러리 Httpapi.lib
DLL Httpapi.dll

추가 정보

HTTP Server API 버전 1.0 함수

HttpAddUrlToUrlGroup

HttpRemoveUrl