httpCreateUrlGroup 函数 (http.h)

HttpCreateUrlGroup 函数在指定的服务器会话下创建 URL 组。

语法

HTTPAPI_LINKAGE ULONG HttpCreateUrlGroup(
  [in]  HTTP_SERVER_SESSION_ID ServerSessionId,
  [out] PHTTP_URL_GROUP_ID     pUrlGroupId,
  [in]  ULONG                  Reserved
);

parameters

[in] ServerSessionId

创建 URL 组时所使用的服务器会话的标识符。

[out] pUrlGroupId

指向接收 URL 组 ID 的变量的指针。

[in] Reserved

保留。 必须为零。

返回值

如果函数成功,则返回 NO_ERROR

如果函数失败,它将返回以下错误代码之一。

含义
ERROR_INVALID_PARAMETER
ServerSessionId 参数指示不存在的服务器会话。

pUrlGroupId 参数为 null。

Reserved 参数为非零。

注解

URL 组是一组 URL 的配置容器。 它们是在服务器会话下创建的,并继承服务器会话的配置设置。 在 URL 组上设置配置参数时,它会替代服务器会话上设置的配置。 有关 URL 组的设置配置的详细信息,请参阅 HttpSetUrlGroupProperty

创建 URL 组后,它必须与请求队列关联才能接收请求。 若要将 URL 组与请求队列关联,应用程序使用 HttpServerBindingProperty 属性调用 HttpSetUrlGroupProperty 如果未设置此属性,则不会将 URL 组的匹配请求传递到请求队列,并且 HTTP 服务器 API 将生成 503 响应。

URL 组与请求队列的关联是动态的。 在删除服务器会话或 URL 组之前,无法更改与服务器会话的关联。 删除服务器会话时,所有关联的 URL 组也会自动关闭。

URL 组最初创建为空组。 必须通过调用 HttpAddUrlToUrlGroup 将 URL 添加到组。

应用程序可能会创建多个 URL 组,原因如下:

  • 为它正在侦听的 URL 名称空间的不同部分设置不同的配置。
  • 为它正在侦听的 URL 名称空间的不同部分设置单独的请求队列。

应用程序应尽可能将 URL 合并到组中;否则,性能会降低,并且系统的内存消耗增加将影响可伸缩性。

HTTP 服务器 API 不支持 URL 组上的异步 I/O。

如果不再需要 URL 组,或者在应用程序终止之前,它必须通过调用 HttpCloseUrlGroup 删除 URL 组。

URL 组的创建版本与创建它的服务器会话的版本相同。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 http.h
Library Httpapi.lib
DLL Httpapi.dll

另请参阅

HTTP 服务器 API 版本 2.0 函数

HttpAddUrlToUrlGroup

HttpCloseUrlGroup

HttpQueryUrlGroupProperty

HttpRemoveUrlFromUrlGroup

HttpSetUrlGroupProperty