使用xml响应附加条件html文件输出

时间:2009-03-27 15:36:46

标签: asp.net xml performance compression

嘿伙计们,我有一个安静的xml服务,客户端通过他们正在查看的当前版本的html。如果服务器上的版本与客户端相同,我只需用xml中的当前服务器版本进行响应。例如:<Response ServerHTMLVersion="1" />

但是,如果服务器html版本大于当前客户端版本,我仍然会像上面那样像<Response ServerHTMLVersion="2" />那样吐出相同的响应。但问题是我的客户端应用程序需要做一个单独的http请求下载html文件incase响应xml版本大于客户端版本

出于性能原因,我想减少这个http请求,我想知道最好的方法是什么。我应该简单地编码html以使其安全xml并附加xml响应 - 问题是这是html是FAT和编码使它更加胖

OR

有更好的方法来管理吗?请注意,我现在已经gziping我的响应,xml和html现在

我想知道如何做到这一点,牢记性能。 restful xml服务是通过asp.net 3.5和iis 7实现的。

1 个答案:

答案 0 :(得分:1)

您是否考虑过使用HTTP标头?由于这里的主要数据确实是HTML,而ServerHTMLVersion是关于该HTML的一种“元数据”,它应该可以工作。

就个人而言,当版本匹配时,我会将请求的响应1)留空; 2)不匹配版本的HTML;然后,使用Pragma HTTP标头发送类似Pragma的内容:“ServerHTMLVersion = 2”。通过这样做,您可以轻松检查客户端和服务器版本是否不同,只需获取完整响应即可。

有些人会讨论从REST服务返回HTML的想法,但我个人认为这完全有效,并且是一种将元数据与实际用户数据分离的简洁方法。

-Jerod