WS_CHANNEL_PROPERTY_ID 枚举 (webservices.h)
每个通道属性都由 ID 标识,并具有关联的值。 如果在创建通道时未指定属性,则使用其默认值。
语法
typedef enum {
WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE = 0,
WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE = 1,
WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE = 2,
WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE = 3,
WS_CHANNEL_PROPERTY_ENCODING = 4,
WS_CHANNEL_PROPERTY_ENVELOPE_VERSION = 5,
WS_CHANNEL_PROPERTY_ADDRESSING_VERSION = 6,
WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE = 7,
WS_CHANNEL_PROPERTY_STATE = 8,
WS_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL = 9,
WS_CHANNEL_PROPERTY_IP_VERSION = 10,
WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT = 11,
WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT = 12,
WS_CHANNEL_PROPERTY_SEND_TIMEOUT = 13,
WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT = 14,
WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT = 15,
WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT = 16,
WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS = 17,
WS_CHANNEL_PROPERTY_TRANSFER_MODE = 18,
WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE = 19,
WS_CHANNEL_PROPERTY_MULTICAST_HOPS = 20,
WS_CHANNEL_PROPERTY_REMOTE_ADDRESS = 21,
WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS = 22,
WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID = 23,
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS = 24,
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS = 25,
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_INSTANCE = 26,
WS_CHANNEL_PROPERTY_TRANSPORT_URL = 27,
WS_CHANNEL_PROPERTY_NO_DELAY = 28,
WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES = 29,
WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME = 30,
WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL = 31,
WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS = 32,
WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN = 33,
WS_CHANNEL_PROPERTY_CHANNEL_TYPE = 34,
WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE = 35,
WS_CHANNEL_PROPERTY_ENCODER = 36,
WS_CHANNEL_PROPERTY_DECODER = 37,
WS_CHANNEL_PROPERTY_PROTECTION_LEVEL = 38,
WS_CHANNEL_PROPERTY_COOKIE_MODE = 39,
WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE = 40,
WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY = 41,
WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING = 42,
WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT = 43,
WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT = 44,
WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS = 45,
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS = 46,
WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN = 47,
WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN = 48,
WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE = 49
} WS_CHANNEL_PROPERTY_ID;
常量
WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE 值: 0 ULONG 与 WsCreateChannel、 WsCreateChannelForListener 或一起使用 WsGetChannelProperty for WS_TCP_CHANNEL_BINDING, WS_HTTP_CHANNEL_BINDING或 WS_NAMEDPIPE_CHANNEL_BINDING。 此值限制为 消息可能由通道接收或发送。 该限制指定最大大小 信封以编码线形式显示时,以字节为单位。 最小值为 1。 此属性限制内存量 通道为接收或发送缓冲消息而分配的 。 使用缓冲输入接收时,会将整个消息读入 缓冲区,然后应用程序才有权访问它。 使用缓冲输出发送时, 在发送之前,整个消息会累积到缓冲区中。 仅当缓冲的输入或输出已指定此属性 指定 (WS_STREAMED_INPUT_TRANSFER_MODE 或 尚未) 设置WS_STREAMED_OUTPUT_TRANSFER_MODE。 默认值为 65536。 WS_UDP_CHANNEL_BINDING始终使用值 65536。 |
WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE 值:1 与 WsCreateChannel、WsCreateChannelForListener 或 一起使用的未签名__int64 WsGetChannelProperty WS_HTTP_CHANNEL_BINDING。 此 值是可接收或发送流式处理消息大小的限制 用于通道。 此限制指定信封显示的最大大小(以字节为单位) 采用编码的线路形式。 最小值为 1。 仅当选择了流式处理输入或输出时,才能指定此属性 已 ) 设置 (WS_STREAMED_INPUT_TRANSFER_MODE 或WS_STREAMED_OUTPUT_TRANSFER_MODE。 默认值为 4194304。 |
WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE 值: 2 与 WsCreateChannel、WsCreateChannelForListener 或 一起使用的 ULONG WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING。 此值是消息开头大小的限制。 邮件的开头由信封标记、标头和正文标记组成。 该限制指定数据显示时的最大大小(以字节为单位) 其编码的线路形式。 最小值为 1。 仅当已选择流式处理输入时,才能指定此属性 (WS_STREAMED_INPUT_TRANSFER_MODE) 。 此属性限制通道将分配的内存量 ,以便读取消息的开头。 对于流式处理输入, 在应用程序之前,将整个消息开头读入缓冲区 收到已读取消息开头的通知。 默认值为 16384。 |
WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE 值: 3 与 WsCreateChannel、WsCreateChannelForListener 或 一起使用的 ULONG WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING。 此值限制将累积多少个字节 在调用 WsFlushBody 之前。 仅当选择了流输出时,才能指定此属性 (WS_STREAMED_OUTPUT_TRANSFER_MODE) 。 此属性限制通道将分配的内存量 ,以便累积缓冲数据。 对于流式处理输出, 通道将在缓冲区中累积数据,直到调用 WsFlushBody 。 默认值为 65536。 |
WS_CHANNEL_PROPERTY_ENCODING 值: 4 WS_ENCODING值 与 WsCreateChannel、 WsCreateChannelForListener 或 WsGetChannelProperty 一起使用 , WS_TCP_CHANNEL_BINDING或 WS_HTTP_CHANNEL_BINDING。 此值指定用于通道的编码。 默认值取决于绑定:
WS_UDP_CHANNEL_BINDING始终使用值WS_ENCODING_XML_UTF8。 |
WS_CHANNEL_PROPERTY_ENVELOPE_VERSION 值: 5 WS_ENVELOPE_VERSION值 与 WsCreateChannel、 WsCreateChannelForListener 或 WsGetChannelProperty 一起使用。 此值指定要用于通道的信封版本。 The 通道的信封版本必须与用于 的消息的信封版本匹配 通道。 WS_NAMEDPIPE_CHANNEL_BINDING不支持此属性。 命名管道通道始终使用 WS_ENVELOPE_VERSION_SOAP_1_2。 默认值取决于绑定:
|
WS_CHANNEL_PROPERTY_ADDRESSING_VERSION 值: 6 WS_ADDRESSING_VERSION值 与 WsCreateChannel、 WsCreateChannelForListener 或 WsGetChannelProperty 一起使用。 此值指定要用于通道的寻址版本。 The 通道的寻址版本必须与使用的消息的版本匹配 通道。 默认值取决于绑定:
仅支持WS_ADDRESSING_VERSION_TRANSPORT WS_HTTP_CHANNEL_BINDING。 |
WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE 值: 7 与 WsCreateChannel、WsCreateChannelForListener 或 WsGetChannelProperty 一起使用的 ULONG。 此属性仅对 WS_TCP_CHANNEL_BINDING 或 WS_NAMEDPIPE_CHANNEL_BINDING有效。 此值指定会话字典字节数的配额 使用基于会话的编码时将传输或接收的字符串。 目前支持的唯一基于会话的编码是 WS_ENCODING_XML_BINARY_SESSION_1,这是默认编码 用于 WS_TCP_CHANNEL_BINDING。 如果在接收方达到配额,则通道 将出错。 如果在发送端达到配额,则通道将只是 在不使用会话字典的情况下传输字符串。 如果未使用基于会话的编码,则忽略此值。 默认值为 2048。 |
WS_CHANNEL_PROPERTY_STATE 值: 8 WS_CHANNEL_STATE值 由 WsGetChannelProperty 返回。 返回的值是当前状态的快照,因此为 在调用方之前,状态可能已更改 有机会检查该值。 |
WS_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL 值: 9 与 WsCreateChannel 或 WsGetChannelProperty 一起使用的WS_CALLBACK_MODEL值。 此值指示发出时的首选异步回调模型 通道的异步操作。 如果使用 WsCreateChannelForListener ,请参阅 WS_LISTENER_PROPERTY_ASYNC_CALLBACK_MODEL。 默认值为 WS_LONG_CALLBACK。 WS_SERVICE_HOST和WS_SERVICE_PROXY都仅支持WS_LONG_CALLBACK 作为此属性的可接受值。 |
WS_CHANNEL_PROPERTY_IP_VERSION 值: 10 WS_IP_VERSION值 与 WsCreateChannel 或 WsGetChannelProperty 一起使用 ,用于 WS_TCP_CHANNEL_BINDING 或 WS_UDP_CHANNEL_BINDING。 此属性指定通道应使用的 IP 版本 与远程终结点通信。 若要指定要用于接受的通道的 IP 版本,请使用 WS_LISTENER_PROPERTY_IP_VERSION 侦听器属性 创建侦听器对象。 默认值为 WS_IP_VERSION_AUTO。 |
WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT 值: 11 与 WsCreateChannel、WsSetChannelProperty 一起使用的 ULONG 或 WsSetChannelProperty for WS_HTTP_CHANNEL_BINDING and WS_CHANNEL_TYPE_REQUEST。 此超时限制解析所花费的时间量 DNS 名称。 超时值以毫秒为单位, 其中,值 INFINITE 指示没有超时。 可以在任何通道状态下设置此属性。 默认值为 INFINITE。 |
WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT 值: 12 与 WsCreateChannel 一起使用的 ULONG, WsSetChannelProperty 或 WsGetChannelProperty 在客户端 上WS_TCP_CHANNEL_BINDING 或 WS_NAMEDPIPE_CHANNEL_BINDING 。 此超时会限制连接到远程计算机并完成 net.tcp 或 net.pipe 握手所花费的时间。 超时值 以毫秒为单位,其中 VALUE INFINITE 指示没有超时。 若要设置 或在服务器端获取相应的超时,请使用 (WS_LISTENER_PROPERTY_CONNECT_TIMEOUT) 。 与 WsCreateChannel 一起使用, WsSetChannelProperty 或 WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST。 此超时限制连接所花费的时间 到 HTTP 服务器。 超时值以毫秒为单位, 其中,值 INFINITE 指示没有超时。 可以在任何通道状态下设置此属性。 默认值为 30000(30 秒)。 默认情况下,WS_SERVICE_PROXY将此超时设置为 INFINITE。 |
WS_CHANNEL_PROPERTY_SEND_TIMEOUT 值: 13 与 WsCreateChannel、WsCreateChannelForListener 一起使用的 ULONG, WsSetChannelProperty 或 WsGetChannelProperty 用于 WS_TCP_CHANNEL_BINDING 或 WS_NAMEDPIPE_CHANNEL_BINDING。 此超时限制 发送消息字节所花费的时间量。 超时值以毫秒为单位,其中 VALUE INFINITE 指示 无超时。 与 WsCreateChannel、 WsSetChannelProperty 一起使用 或 WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST。 此超时会限制发送 HTTP 标头和消息的字节数。 超时值以毫秒为单位,其中 VALUE INFINITE 指示没有超时。 可以在任何通道状态下设置此属性。 默认值为 30000(30 秒)。 WS_SERVICE_HOST和WS_SERVICE_PROXY对此进行设置 默认情况下,timeout 为 INFINITE。 |
WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT 值: 14 与 WsCreateChannel、WsSetChannelProperty 一起使用的 ULONG 或 WsSetChannelProperty for WS_HTTP_CHANNEL_BINDING and WS_CHANNEL_TYPE_REQUEST。 此超时会限制等待的时间 要从服务器接收的所有响应标头。 超时值以毫秒为单位,其中 VALUE INFINITE 表示无超时。 可以在任何通道状态下设置此属性。 默认值为 30000(30 秒)。 WS_SERVICE_PROXY将此超时设置为 INFINITE。 |
WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT 值: 15 与 WsCreateChannel、WsCreateChannelForListener 一起使用的 ULONG, WsSetChannelProperty 或 WsGetChannelProperty, 用于 WS_TCP_CHANNEL_BINDING 或 WS_NAMEDPIPE_CHANNEL_BINDING。 此超时限制接收 的时间 消息的字节数。 超时值以毫秒为单位,其中 VALUE INFINITE 指示 无超时。 与 WsCreateChannel、 WsSetChannelProperty 一起使用 或 WsGetChannelPropertyfor WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST。 此超时限制接收 的时间 消息的字节数。 超时值以毫秒为单位, 其中,值 INFINITE 指示没有超时。 此超时可由 WsWriteMessageEnd、 WsReadMessageStart 和 WsReadMessageEnd 触发。 可以在任何通道状态下设置此属性。 默认值为 30000(30 秒)。 WS_SERVICE_HOST和WS_SERVICE_PROXY对此进行设置 默认情况下,timeout 为 INFINITE。 |
WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT 值: 16 与 WsCreateChannel、WsCreateChannelForListener 一起使用的 ULONG WsSetChannelProperty 或 WsGetChannelProperty 用于 WS_TCP_CHANNEL_BINDING 或 WS_NAMEDPIPE_CHANNEL_BINDING。 此超时会限制完成 关闭 net.tcp 或 net.pipe 握手。 超时值以毫秒为单位,其中 VALUE INFINITE 指示没有超时。 可以在任何通道状态下设置此属性。 默认值为 30000(30 秒)。 默认情况下,WS_SERVICE_PROXY将此超时设置为 INFINITE。 |
WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS 值: 17 用于 WS_HTTP_CHANNEL_BINDING、WS_TCP_CHANNEL_BINDING、WS_NAMEDPIPE_CHANNEL_BINDING 的 WsCreateChannel的BOOL 和 WS_UDP_CHANNEL_BINDING。 与 WsGetChannelProperty 一起使用 ,用于WS_CUSTOM_CHANNEL_BINDING。 如果此属性设置为 TRUE 或在调用 WsCreateChannel 时未提供, 更具体的通道超时属性 (例如 WS_CHANNEL_PROPERTY_SEND_TIMEOUT) 优先,并按记录的行为。 当此属性设置为 FALSE 时, 除非显式指定,否则所有特定的通道超时属性都设置为 INFINITE。 可以使用 WsGetChannelProperty 从自定义通道查询此属性, 有关更多详细信息 ,请参阅WS_GET_CHANNEL_PROPERTY_CALLBACK 。 默认值为 TRUE。 若要实现自己的超时逻辑, WS_SERVICE_PROXY 和 WS_SERVICE_HOST将 此属性设置为 FALSE 标准通道绑定,并要求自定义通道通过查询 和 来支持它 验证它是否设置为 FALSE。 仍可以如上所述提供更具体的超时属性。 |
WS_CHANNEL_PROPERTY_TRANSFER_MODE 值: 18 WS_TRANSFER_MODE值 与 WsCreateChannel 一起使用 用于 控制 消息的WS_HTTP_CHANNEL_BINDING 在通道上发送和接收的缓冲或流式传输。 客户 和 服务器可能使用不同的传输模式,但仍能够通信。 为此,所有通道都支持 WsGetChannelProperty 属性中找到的值。 对于 WS_HTTP_CHANNEL_BINDING以外的通道绑定,值始终 WS_BUFFERED_TRANSFER_MODE。 默认属性值为 WS_BUFFERED_TRANSFER_MODE。 注意 服务模型仅对两者使用WS_BUFFERED_TRANSFER_MODE WS_SERVICE_PROXY 和 WS_SERVICE_HOST。 唯一的例外 是在 WS_SERVICE_HOST 上使用消息协定,其中 允许WS_STREAMED_OUTPUT_TRANSFER_MODE 。 具有 WS_CHANNEL_TYPE_REQUEST的WS_STREAMED_OUTPUT_TRANSFER_MODE 需要 Windows Vista 及更高版本,并且仅在与安全性一起使用时支持 WS_HTTP_HEADER_AUTH_SCHEME_BASIC 。 |
WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE 值: 19 与 WsCreateChannel、WsSetChannelProperty 一起使用的 ULONG 或 WsGetChannelProperty for WS_UDP_CHANNEL_BINDING 使用 WS_CHANNEL_TYPE_DUPLEX 指示哪个适配器 在发送到多播地址时应使用。 该值是适配器的接口索引。 如果未设置此属性,或为 0,则为 的默认适配器 使用计算机。 这可能不适用于具有多个适配器的计算机。 可以在任何通道状态下设置此属性。 默认属性值为 0。 |
WS_CHANNEL_PROPERTY_MULTICAST_HOPS 值: 20 与 WsCreateChannel 或 WsGetChannelProperty 一起使用的 ULONG 使用 WS_CHANNEL_TYPE_DUPLEX WS_UDP_CHANNEL_BINDING 指定 UDP 消息可以传输的最大跃点数。 默认属性值为 1。 |
WS_CHANNEL_PROPERTY_REMOTE_ADDRESS 值: 21 WS_ENDPOINT_ADDRESS结构 与 WsGetChannelProperty 一起使用 使用 WS_CHANNEL_TYPE_DUPLEX WS_UDP_CHANNEL_BINDING 检索通道的远程方终结点地址。 返回的 字段 WS_ENDPOINT_ADDRESS 结构是有效且恒定的,直到通道 重置或释放。 调用方不应修改返回的值 指向WS_ENDPOINT_ADDRESS的字段。 在通道达到打开状态之前,无法检索此属性。 此属性基于从 接收的源 IP 地址 网络,即使使用 ,也可能被欺骗或篡改 安全通道 (,具体取决于网络环境) 。 |
WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS 值: 22 SOCKADDR_STORAGE结构 与 WsCreateChannel 一起使用 用于检索 IP 地址的以下通道类型 远程方: 在通道开始读取消息之前,无法检索此属性。 此属性基于从 接收的源 IP 地址 网络,即使使用 ,也可能被欺骗或篡改 安全通道 (,具体取决于网络环境) 。 |
WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID 值: 23 指向与 WsGetChannelProperty 一起使用的 ULONGLONG 的指针 使用 WS_CHANNEL_TYPE_REPLY WS_HTTP_CHANNEL_BINDING 检索唯一标识客户端连接的标识符。 在通道开始读取消息之前,无法检索此属性。 连接 ID 唯一标识连接,而 接受通道的侦听器对象将保持打开状态。 给定的回复通道实例与连接无关。 每次接受通道时,都可能存在不同的连接 ID 即使自上次接受) 以来,总连接集没有更改,也 (。 应用程序可以使用连接 ID 将状态与 HTTP 连接。 |
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS 值: 24 与WsCreateChannel 或 WsCreateChannelForListener 一起使用的WS_CUSTOM_CHANNEL_CALLBACKS结构,用于WS_CUSTOM_CHANNEL_BINDING。 此属性用于指定以下回调: 定义自定义通道的实现。 使用 WS_CUSTOM_CHANNEL_BINDING 时必须指定此属性。 |
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS 值: 25 指向用于WS_CUSTOM_CHANNEL_BINDING的 WsCreateChannel 或 WsCreateChannelForListener 使用的任意大小数据类型的指针。 此属性用于指定用于创建自定义的参数 通道实现。 属性的大小是数据类型的大小。 此属性的值将传递给 WS_CREATE_CHANNEL_CALLBACK。 如果未指定此属性,则其值为 NULL ,size 为零。 |
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_INSTANCE 值: 26 用于WS_CUSTOM_CHANNEL_BINDING的 WsGetChannelProperty 的 void。 属性的大小为 (void) 的大小。 该值对应于返回的通道实例值 WS_CREATE_CHANNEL_CALLBACK。 此属性可用于获取基础通道 自定义通道的实例。 这允许调用方直接 在现有的情况下,与 实例交互 通道属性或通道函数集不足。 |
WS_CHANNEL_PROPERTY_TRANSPORT_URL 值: 27 WS_STRING结构 与 WsGetChannelProperty 一起使用 对于使用WsCreateChannelForListener 创建的通道WS_HTTP_CHANNEL_BINDING或WS_TCP_CHANNEL_BINDING。 此属性在服务器上用于获取传递的 URL 到客户端上的 WsOpenChannel 。 此 URL 可能与WS_TO_HEADER中的值不同 如果使用 WsAddressMessage ,则为 。 的映射 基础传输的传输 URL 因 WS_CHANNEL_BINDING,如下所示:
此属性仅在通道具有 已使用 WsAcceptChannel 接受。 当以下情况下,调用方应传递 WS_STRING 的地址 检索此属性。 返回的字符串是完全限定的 编码格式的 URL。 返回的字符串正常,直到通道 已释放或重置。 |
WS_CHANNEL_PROPERTY_NO_DELAY 值: 28 与 WsCreateChannel、WsCreateChannelForListener 或 WsGetChannelProperty 或 WsSetChannelProperty 一起使用的 BOOL,用于 WS_TCP_CHANNEL_BINDING。 此属性控制基础套接字的TCP_NODELAY套接字选项值。 如果此值为 FALSE,则使用 Nagle 算法,它可以 通过合并小消息来提高吞吐量。 将此值设置为 TRUE 可能会降低延迟,但代价是吞吐量 小消息。 默认值为 FALSE。 |
WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES 值: 29 用于 WsCreateChannel 的 BOOL,WsCreateChannelForListener for WS_TCP_CHANNEL_BINDING。 此属性控制基础套接字SO_KEEPALIVE套接字选项值。 将此值设置为 TRUE 将导致发送保持连接数据包 在基础套接字上,这可能有助于检测何时 远程方不再可用。 默认值为 FALSE。 |
WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME 值: 30 与 WsCreateChannel 或 WsCreateChannelForListener 一起使用的 ULONG,用于WS_TCP_CHANNEL_BINDING。 此属性以毫秒为单位。 仅当 WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES 属性的值为 TRUE 时,才能指定此属性。 值表示发送保持活动数据包之前(如果 为 ) 套接字未使用。 默认值为 2 小时。 |
WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL 值: 31 与 WsCreateChannel 或 WsCreateChannelForListener 一起使用的 ULONG,用于WS_TCP_CHANNEL_BINDING。 此属性以毫秒为单位。 仅当 WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES 属性的值为 TRUE 时,才能指定此属性。 在 WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME 中指定的时间过期后, 系统将开始发送保持活动状态的数据包以尝试联系 远程方。 此设置控制系统发送的频率 另一个数据包 (为重试尝试) 。 默认值为 1 秒钟。 |
WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS 值: 32 与 WsCreateChannel 一起使用的 ULONG,用于WS_HTTP_CHANNEL_BINDING。 此属性指定客户端应用程序的最大连接数 可能具有针对 HTTP 服务器的 。 同一进程中访问同一 HTTP 服务器的其他组件可以缓存和重新使用连接。 默认值为 INFINITE (无限制) 。 |
WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN 值: 33 用于 WsGetChannelProperty 的 BOOLWS_TCP_CHANNEL_BINDING 或使用 WS_CHANNEL_TYPE_DUPLEX_SESSION 进行 WS_NAMEDPIPE_CHANNEL_BINDING。 此属性指示 WsShutdownSessionChannel 是否已 用于关闭通道。 通道必须 位于 WS_CHANNEL_STATE_OPEN 或 WS_CHANNEL_STATE_FAULTED 状态。 |
WS_CHANNEL_PROPERTY_CHANNEL_TYPE 值: 34 WS_CHANNEL_TYPE值 与 WsGetChannelProperty 一起使用,适用于所有通道类型 查询通道的类型。 通道可以位于任何 WS_CHANNEL_STATE中。 |
WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE 值: 35 与 WsCreateChannel、WsCreateChannelForListener 或 一起使用的 ULONG WsGetChannelProperty for WS_TCP_CHANNEL_BINDING, 控制内存分配的WS_HTTP_CHANNEL_BINDING或WS_NAMEDPIPE_CHANNEL_BINDING 通道上消息的特征。 此属性指定通道将保留的最大内存量 重置消息后, 周围。 如果所有 通道看到的消息都小于此大小,然后分配 为了缓冲消息,将最小化。 仅当缓冲的输入或输出已指定此属性 指定 (WS_STREAMED_INPUT_TRANSFER_MODE 或 尚未) 设置WS_STREAMED_OUTPUT_TRANSFER_MODE。 默认值为 65536。 WS_UDP_CHANNEL_BINDING始终使用值 65536。 |
WS_CHANNEL_PROPERTY_ENCODER 值: 36 与 WsCreateChannel 或 WsCreateChannelForListener 一起使用的 WS_CHANNEL_ENCODER 结构,适用于 WS_TCP_CHANNEL_BINDING, WS_HTTP_CHANNEL_BINDING或 WS_NAMEDPIPE_CHANNEL_BINDING 来提供消息的自定义编码。 此属性不能与 WS_UDP_CHANNEL_BINDING一起使用。 |
WS_CHANNEL_PROPERTY_DECODER 值: 37 与WsCreateChannel 或 WsCreateChannelForListener 一起使用的 WS_CHANNEL_DECODER 结构,适用于 WS_TCP_CHANNEL_BINDING, WS_HTTP_CHANNEL_BINDING或 WS_NAMEDPIPE_CHANNEL_BINDING 来提供消息的自定义 dencoding。 此属性不能与 WS_UDP_CHANNEL_BINDING一起使用。 |
WS_CHANNEL_PROPERTY_PROTECTION_LEVEL 值: 38 与 WsGetChannelProperty 一起使用的任何通道类型的WS_PROTECTION_LEVEL值。 此属性指示 通道提供的安全保证。 此属性的值取决于安全要求 已为通道请求。 |
WS_CHANNEL_PROPERTY_COOKIE_MODE 值: 39 与 WsCreateChannel 一起使用的WS_COOKIE_MODE值,WS_HTTP_CHANNEL_BINDING用于控制 HTTP Cookie 的处理方式。 默认值为 WS_AUTO_COOKIE_MODE。 |
WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE 值: 40 与 WsCreateChannel 一起使用的WS_HTTP_PROXY_SETTING_MODE值,WS_HTTP_CHANNEL_BINDING用于控制通道的 HTTP 代理设置。 默认值为 WS_HTTP_PROXY_SETTING_MODE_AUTO。 |
WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY 值: 41 与 WsCreateChannel 一起使用的WS_CUSTOM_HTTP_PROXY结构,WS_HTTP_CHANNEL_BINDING指定 HTTP 通道的自定义设置。 此属性必须 当 WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE 设置为 时指定 WS_HTTP_PROXY_SETTING_MODE_CUSTOM。 默认值为 NULL。 |
WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING 值: 42 与 WsCreateChannel 或 WsCreateChannelForListener 一起使用的WS_HTTP_MESSAGE_MAPPING结构,用于 WS_HTTP_CHANNEL_BINDING。 此属性值控制如何将 HTTP 请求或响应映射到 消息对象。 有关详细信息 ,请参阅WS_HTTP_MESSAGE_MAPPING 。 此属性的默认值为 WS_HTTP_MESSAGE_MAPPING 结构如下所示:
WS_HTTP_MESSAGE_MAPPING 字段 requestMappingOptions 和 responseMappingOptions 必须为 0 除非使用通道属性 WS_CHANNEL_PROPERTY_ENCODING 将编码设置为 WS_ENCODING_RAW。 |
WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT 值: 43 用于 WsCreateChannel 的 BOOL,用于WS_CHANNEL_TYPE_REQUESTWS_HTTP_CHANNEL_BINDING。 此属性值控制是否启用 HTTP 自动重定向。 将此值设置为 TRUE 可启用 HTTP 自动重定向。 默认值为 FALSE。 如果指定 了 WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT 属性, 忽略此属性。 |
WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT 值: 44 WS_HTTP_REDIRECT_CALLBACK_CONTEXT 结构 与 WsCreateChannel 一起使用,用于WS_CHANNEL_TYPE_REQUESTWS_HTTP_CHANNEL_BINDING。 当需要更精细地控制自动 HTTP 重定向时,可以指定此属性值。 设置此属性后,将使用原始终结点 URL 调用指定的回调例程 以及消息要转发到的新 URL。 回调返回值用于指示是否 应允许重定向。 |
WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS 值: 45 与 WsCreateChannel、WsSetChannelProperty 一起使用的 BOOL WsGetChannelProperty 或 WsCreateServiceProxy for WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST,或 客户端上的WS_TCP_CHANNEL_BINDING、 WS_NAMEDPIPE_CHANNEL_BINDING和 WS_UDP_CHANNEL_BINDING 。 如果设置为 TRUE,则通道和服务模型函数在收到错误时返回错误代码。 如果此运行时识别出错误,则返回相应的错误代码, 否则返回 WS_E_ENDPOINT_FAULT_RECEIVED 。 (请参阅 Windows Web Services 返回值。) 设置为 FALSE 时, WsReceiveMessage 和 WsRequestReply 在收到错误时返回 WS_E_ENDPOINT_FAULT_RECEIVED 。 其他通道函数将错误作为常规消息返回,并WS_MESSAGE_PROPERTY_IS_FAULT 可用于区分错误与其他消息。 当此属性设置为 TRUE 并与 WsCreateChannel 或 WsSetChannelProperty 一起使用时, 它会替代 WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS的以下行为:如果 错误被 识别到 运行时,不安全的故障不会导致错误消息的安全验证失败,即使 WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS 设置为 FALSE。 安全验证的状态 可以通过检查 WS_MESSAGE_PROPERTY_PROTECTION_LEVEL来确定。 这不适用于 WS_UDP_CHANNEL_BINDING ,因为它不支持安全性。 当此属性设置为 FALSE 或与 WsCreateServiceProxy 一起使用或无法识别错误时 在运行时, WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS 中描述的行为在没有 异常。 无论此属性值如何,如果由于收到错误而返回错误代码, WsGetFaultErrorProperty 可用于从错误对象查询错误的详细信息。 可以在任何通道状态下设置此属性。 默认值为 TRUE。 如果与 WsCreateServiceProxy 一起使用,则此属性必须设置为 TRUE。 将此属性设置为 TRUE 可能会导致对某些错误禁用消息安全验证。 未经验证的错误可能不可信。 |
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS 值: 46 与 WsCreateChannel、WsSetChannelProperty 一起使用的 BOOL 或 WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST,或在客户端上 WS_TCP_CHANNEL_BINDING 和 WS_NAMEDPIPE_CHANNEL_BINDING 。 设置为 TRUE 时,在安全通道上收到的不安全错误不会导致消息安全验证失败。 而是 错误将被视为消息安全验证成功,并按 WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS中所述进行处理。 可以通过检查 WS_MESSAGE_PROPERTY_PROTECTION_LEVEL来确定安全验证的状态。 设置为 FALSE 时,将像验证任何其他消息一样处理错误消息的消息安全验证。 对于 此运行时识别的错误,WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS可能会重写此属性。 此属性仅适用于消息级安全验证,对传输安全性没有影响。 可以在任何通道状态下设置此属性。 默认值为 FALSE。 将此属性设置为 TRUE 会导致禁用错误的消息安全验证。 不安全的错误可能不可信。 |
WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN 值: 47 WCHAR 指针 与 WsGetChannelProperty 一起使用 ,用于 WS_HTTP_CHANNEL_BINDING 和 WS_CHANNEL_TYPE_REQUEST。 返回用于上次失败请求的远程终结点的服务器主体名称。 不保证此属性为 这些 LIP。 以下是必要的 (但并非始终足以满足此属性存在的) 条件:
此属性仅适用于 Windows 7 及更高版本。 |
WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN 值: 48 与 WsGetChannelProperty 一起使用的 WCHAR 指针,用于WS_HTTP_CHANNEL_BINDING和WS_CHANNEL_TYPE_REQUEST。 返回用于上次失败请求的 HTTP 代理服务器的服务器主体名称。 不保证此属性为 这些 LIP。 以下是必要的 (但并非始终足以满足此属性存在的) 条件:
此属性仅适用于 Windows 7 及更高版本。 |
WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE 值: 49 与 WsCreateChannelForListener 一起使用的 ULONG 或 WsGetChannelProperty for WS_HTTP_CHANNEL_BINDING 与 WS_CHANNEL_TYPE_REPLY。 此值是标头大小的限制 接收的 HTTP 请求的 可以是 。 该限制指定最大大小 HTTP 请求标头的 ,以字节为单位。 此属性限制内存量 与 WS_CHANNEL_TYPE_REPLY 的WS_HTTP_CHANNEL_BINDING 将分配以接收 HTTP 请求标头。 接收时,整个 HTTP 请求 标头在处理之前被读入缓冲区。 默认值为 65536。 |
要求
最低受支持的客户端 | Windows 7 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2008 R2 [桌面应用 |UWP 应用] |
标头 | webservices.h |