我爱Aspx >> Asp.Net >> RVP:存在和即时消息传送协议 (3)
RVP:存在和即时消息传送协议 (3)
- :未知 Դ:internet :2007-5-5 19:46:30 ؼ:
- PROPFIND
PROPFIND DAV 方法用来获取节点的属性。属性包含 PRESENCE INFORMATION 的一些元组(相关值的集合),如在线状态或所代表的 PRINCIPAL 的显示名称。 对于 RVP,PROPFIND 方法用来从其它 PRINCIPALS 各自的本地服务器上获取其在线状态。此方法还可以用来提取 RVP 实现可能保持的其它属性,如存储在服务器上的永久联系人列表。 PROPFIND 方法检索在所请求的 URL 上定义的属性。PRESENTITY 提交 REQUEST 方法主体中的 propfind XML 元素,此元素说明正在请求的信息。请求特定的属性值、所有属性值或者资源属性名称的列表都是可能的。PRESENTITY 必须提交至少具有一个属性的主体。 如果在检索属性时出现错误,则在响应中必须包括一个相应的错误结果。请求检索一个不存在的属性值是一个错误,并且必须加以记录。如果响应使用一个多状态 XML 元素,则必须返回一个包含 404 Not Found (未找到)状态值的 XML 元素。 每个响应 XML 元素都必须包含一个 href XML 元素,它标识在其上定义了 prop XML 元素中的属性的那个资源。作为一个平面列表返回对具有内部成员的资源的 PROPFIND 请求的结果,此列表中项的次序并不重要。 虽然 DAV 允许 PROPFIND 请求的深度为 0、1 或“无穷大”,其中“无穷大”是缺省值,但是 RVP 要求深度标头为零。这是由于以分布方式实现名称空间时支持其它深度有困难所造成的。如果深度标头不存在或者深度参数不为零,则 RVP PRESENCE SERVICES 会返回状态代码:412 -Precondition Failed(先决条件失败)。 示例
以下示例说明如何检索 RVP PRESENTITY 的显示名属性。
>>请求 PROPFIND /instmsg/aliases/deriks HTTP/1.1 Host: im.example.com RVP-Notifications-Version: 0.2 RVP-From-Principal: http://im.example.com/instmsg/aliases/deriks Depth: 0 Content-type: text/xml Content-Length: XXXX <?xml version="1.0" ?> <D:propfind xmlns:D="DAV:" xmlns:Z="http://schemas.microsoft.com/rvp/"> <D:prop> <D:displayname/> </D:prop> </D:propfind> >>响应 HTTP/1.1 207 Multi-Status Content-Type: text/xml Content-Length: XXXX RVP-Notifications-Version: 0.2 <?xml version="1.0" ?> <D:multistatus xmlns:D="DAV:" xmlns:Z="http://schemas.microsoft.com/rvp/"> <D:response> <D:href> http://im.example.com/instmsg/aliases/deriks </D:href> <D:propstat> <D:prop> <D:displayname> Derik Stenerson </D:displayname> </D:prop> <D:status>HTTP/1.1 200 OK</D:status> </D:propstat> </D:response> </D:multistatus> PROPPATCH
Ҷƪл˵?
- һƪRVP:存在和即时消息传送协议 (4)
һƪRVP:存在和即时消息传送协议 (2)
- 关于我们 | 广告服务 | 网站建设 | 版权申明 | 申请链接 | 联系我们
- Copyright © 2007 5iaspx.COM. All Right Reserved.
- 本站内容仅供学习,研究,探讨,个人收藏,如有侵权,敬请联系我们,我们尽快解决!